[Bf-extensions-cvs] SVN commit: /data/svn/bf-extensions [3503] trunk/py/scripts/tools/bi_farm: CUDA option now working
Campbell Barton
ideasman42 at gmail.com
Mon Jun 18 17:47:16 CEST 2012
Revision: 3503
http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-extensions&revision=3503
Author: campbellbarton
Date: 2012-06-18 15:47:16 +0000 (Mon, 18 Jun 2012)
Log Message:
-----------
CUDA option now working
Modified Paths:
--------------
trunk/py/scripts/tools/bi_farm/master_ui.py
trunk/py/scripts/tools/bi_farm/new_blender_setup.py
trunk/py/scripts/tools/bi_farm/new_master.py
trunk/py/scripts/tools/bi_farm/new_node_update_frames.sh
Modified: trunk/py/scripts/tools/bi_farm/master_ui.py
===================================================================
--- trunk/py/scripts/tools/bi_farm/master_ui.py 2012-06-18 14:41:10 UTC (rev 3502)
+++ trunk/py/scripts/tools/bi_farm/master_ui.py 2012-06-18 15:47:16 UTC (rev 3503)
@@ -324,7 +324,10 @@
# add a slave
elif self.path == '/slave_add':
d = urllib.parse.parse_qs(command)
- slave_add(d['id'][0], d['ip'][0], eval(d['is_cuda'][0].capitalize()))
+ slave_add(d['id'][0],
+ d['ip'][0],
+ "is_cuda" in d, # checkbox, only exists if pressed
+ )
# add a job
elif self.path == '/job_add':
d = urllib.parse.parse_qs(command)
@@ -491,7 +494,7 @@
# output("<td>")
# dropdown('job_set_processor', job.id, job.processor, Job.processor_types)
# output("%d" % job.processor)
- output("<td>" + job.processor "</td>\n")
+ output("<td>" + job.processor + "</td>\n")
output("<td id='td-toggle'>")
action('job_remove(\\"%s\\")' % job.id, "X", "Are you sure you want to remove this job?")
@@ -527,7 +530,7 @@
output("</select>\n")
output("<select name='processor'>\n")
- for option in Job.processor_type:
+ for option in Job.processor_types:
if option == 'CPU':
state = "selected"
else:
@@ -588,7 +591,7 @@
output("</td>\n")
output("<td>" + slave.id + "</td>\n")
output("<td>" + slave.ip + "</td>\n")
- output("<td>" + ("\u2611" if slave.is_cuda else "\u2610") + "</td>\n")
+ output("<td>" + ("☑" if slave.is_cuda else "☐") + "</td>\n")
if slave.status == 'Disabled':
output("<td style='color:red'>" + slave.status + "</td>\n")
else:
@@ -609,7 +612,7 @@
output("<form method='post' action='/slave_add'>\n")
output("<input name='id' value='Computer X' size='25'/>\n")
output("<input name='ip' value='192.168.1.x' size='25'/>\n")
- output("<input name='is_cuda' checked='no' type='checkbox'>Cuda</input>\n")
+ output("<input name='is_cuda' type='checkbox'>Cuda</input>\n")
output("<input type='submit' value='Add Slave'/>\n")
output("</form>\n")
Modified: trunk/py/scripts/tools/bi_farm/new_blender_setup.py
===================================================================
--- trunk/py/scripts/tools/bi_farm/new_blender_setup.py 2012-06-18 14:41:10 UTC (rev 3502)
+++ trunk/py/scripts/tools/bi_farm/new_blender_setup.py 2012-06-18 15:47:16 UTC (rev 3503)
@@ -37,12 +37,13 @@
# print("finals_config not found")
# sys.exit(1)
+
+# TODO: cleanup this and use some nice arg parsing!
+processor = sys.argv[-5]
output_fpath = sys.argv[-4]
render_frame = int(sys.argv[-3])
quality = sys.argv[-2] + " " + sys.argv[-1]
-print(quality)
-
def get_ip():
import socket
@@ -141,8 +142,20 @@
rd.threads = 8
'''
+
+ # REMOVE SOON
+ '''
if ip == "192.168.3.190":
scene.cycles.device = 'GPU'
+ '''
+
+ if processor == 'CPU':
+ scene.cycles.device = 'CPU'
+ elif processor == 'CUDA':
+ scene.cycles.device = 'GPU'
+ else:
+ assert(0)
+
scene.cycles.use_cache = False
print("rendering using %d threads" % (rd.threads))
Modified: trunk/py/scripts/tools/bi_farm/new_master.py
===================================================================
--- trunk/py/scripts/tools/bi_farm/new_master.py 2012-06-18 14:41:10 UTC (rev 3502)
+++ trunk/py/scripts/tools/bi_farm/new_master.py 2012-06-18 15:47:16 UTC (rev 3503)
@@ -352,7 +352,7 @@
frame_list = " ".join([str(f) for f in frames])
- remote_command(ip, os.path.join(FARM_DIR, "new_node_update_frames.sh") + " " + filename + " " + output_filename + " \"" + job.quality + "\" " + frame_list)
+ remote_command(ip, os.path.join(FARM_DIR, "new_node_update_frames.sh") + " " + filename + " " + job.processor + " " + output_filename + " \"" + job.quality + "\" " + frame_list)
def generate_avi():
@@ -480,7 +480,7 @@
# test the processor
if job.processor == 'CPU':
return True
- elif processor == 'CUDA':
+ elif job.processor == 'CUDA':
return (slave.is_cuda == True)
slave_job, slave_frames = job_find(slaves_state, do_finals, num_frames,
Modified: trunk/py/scripts/tools/bi_farm/new_node_update_frames.sh
===================================================================
--- trunk/py/scripts/tools/bi_farm/new_node_update_frames.sh 2012-06-18 14:41:10 UTC (rev 3502)
+++ trunk/py/scripts/tools/bi_farm/new_node_update_frames.sh 2012-06-18 15:47:16 UTC (rev 3503)
@@ -13,12 +13,15 @@
fi
BLEND=$1
-OUTPUT_BLEND=$2
-QUALITY=$3
+PROCESSOR=$2
+OUTPUT_BLEND=$3
+QUALITY=$4
+# skip 4 args above
shift
shift
shift
+shift
# get info on the file we're rendering
echo "Rendering "${BLEND/\/media\/data\/mango_farm_svn\//}" "$* > $BUSY
@@ -26,7 +29,7 @@
for FRAME in $*
do
# -a doesnt work. TODO, find out why, render with operator until then.
- $FARM_DIR/new_node_command.sh nice -n 19 $FARM_DIR/blender_farm.sh --background -noaudio $BLEND --python $FARM_DIR/new_blender_setup.py -- $OUTPUT_BLEND $FRAME $QUALITY &
+ $FARM_DIR/new_node_command.sh nice -n 19 $FARM_DIR/blender_farm.sh --background -noaudio $BLEND --python $FARM_DIR/new_blender_setup.py -- $PROCESSOR $OUTPUT_BLEND $FRAME $QUALITY &
# no background for testing...
# $FARM_DIR/new_node_command.sh nice -n 19 $FARM_DIR/blender_farm.sh -noaudio $BLEND --python $FARM_DIR/new_blender_setup.py -- $OUTPUT_BLEND $FRAME $QUALITY &
done
More information about the Bf-extensions-cvs
mailing list