07 Documentation

Submitting a Task

Two Ways to Add a Task

For individual users, there are two ways to add tasks to the Golem desktop app, via the Add Task button (circle with a “+” sign) on the main toolbar which allows the user to select a file through the system chooser or via drag and drop. Both single files or folders can be added.

To add a task via the system chooser, click the Add Task icon, select your file or folder and your task will be added to Golem (after you have filled out the Task Settings). To add a file via drag and drop, simply drag a file (or multiple files inside a folder, in case of tasks with multiple resources) onto the Task view, and the task will be added.

Note: On Windows users can add a folder with files using the add task button and single files with drag & drop, On Osx users can add a file and folder in both, On Linux users can add a single file with drag & drop, On Linux users can add a folder with drag & drop and add task button.

Task Settings

Your Task Settings and computing time will vary depending on the complexity of your Blender file, but there are some basic principles to understand and general guidelines to use when submitting a task to the network. Below is a breakdown of all you see on the Task Settings screen.

Local Render Test

Before Golem can assign your task to other nodes, your machine must first complete a local render test. Golem prompts your machine to render a single low resolution frame of your file to determine if it is a valid blender file. This is integral to our verification process and must be completed to ensure the accuracy of computations.

You will see a small window with an icon showing the status of your local render test. Once the test is completed, you can finish up the rest of the required settings.

Render Settings

This section includes all render specific settings:

  • Preset: A dropdown menu where you can choose from saved settings that fit your workflow. This is great for users who render the same or similar files more often.
  • Resolution: Standard HD dimensions are 1920 x 1080 but you can set whatever dimensions fit your needs in this section.
  • Frame Range: Define frames to render. You can separate frame numbers with ;, eg. 1;4;7 will define frame 1, 4 and 7. You can also define frames ranges with -, eg. 1-4 will define frame 1, 2, 3 and 4. Finally, you can also define every x-th frame with ,, eg. 1-10,2 will define frames 1, 3, 5, 7 and 9. So defining frames to render as 1-4;7;10-30,5 will render frames with numbers: 1, 2, 3, 4, 7, 10, 15, 20, 25, 30.
  • Format: This determines the output format of your render frames. Blender supported formats are PNG and EXR.
  • Output to: Choose your output file path. This is where your render frames will be saved. This will override your default file location in your App Settings.

Note: At this point you can save your settings as a preset. If your files use Cycles, there will be an option to set how many Samples you want instead of Frames. This will be implemented in future releases.

Task and Subtask Timeouts

Task and Subtask timeouts are the most important settings when submitting a task. So be sure to carefully consider the size and complexity of your blender file when setting timeouts.

  • Task Timeout: Determines how long you are willing to wait for your task to be computed. This setting should be much higher than your subtask timeout and significantly higher than you expect your render to take. If you render takes 4 hours on your personal machine, then set your Task timeout to 8-10hrs. It is likely that your render will take less time, but you need to be safe since you are paying for the render and you do not want to accidently timeout before the render is completed if your personal connection is slow or if network traffic is low.
  • Subtask Amount: Tells the system how many subtasks to break a task into. Generally if you are rendering a number of frames you should set subtasks to the same number.
  • Subtask Timeout: Determines the timeout threshold of every individual subtask. This setting should be significantly lower than your overall task timeout. You can use the following formula to determine a starting point for your subtask timeouts:
    • Overall Task Timeout / Subtask Amount + 1 hr
    • 10hr Overall Task Timeout / 5 subtasks + 1 hr = 3hr subtask timeout

If you set your subtask timeout too high, you can get stuck with a weak node trying to compute your subtask which could lead to network performance issues. If your subtask timeout is too low, then you run the risk of even high powered nodes not finishing your task.

Note: If your task times out halfway through, you will still pay for subtasks computed. If you are rendering an animation rather than a still image, it is best to have your subtask amount match your frame amount. This means that if a timeout occurs, but some of your subtasks were still computed, you can re-submit the task with the previously completed subtasks removed to avoid rendering them twice (and paying for them twice).

From: https://en.wikibooks.org/wiki/Blender_3D:_Noob_to_Pro/Basic_Animation/Rendering

“Animation rendering can take a while. Consider a short animation sequence of, say 10 seconds at 25 frames per second—250 frames. If a single frame takes 10 seconds to render, then the whole sequence will take about 40 minutes. If a single frame takes a minute, then the whole animation will need over 4 hours to render. And it gets worse the longer the movie is. And so it goes.”

This is why Golem exists, to save you time while rendering.

Once your settings are complete you can set your price.

File Guidelines

  • You cannot submit a file that is IP protected, this includes rendering copyrighted material without the license to do so.
  • Pre-Baking must be completed on any files which require it before rendering with Golem
  • Using the Particle System to create randomly generated objects (ie. trees, fire, snow) may not work with Golem. You must pre-bake the file and attach the added elements to your task
  • If your machine is not powerful enough to create the local test render, you will not be able to submit your task