1 Features Overview

_images/squidnet-block.png

1.1 High-level

  • Simple single-file installation.
  • Single-click render farm deployment of SquidNet software updates.
  • Cross-platform support for Windows, Mac OS and most major Linux distributions.
  • Intuitive MDI (multiple-document interface) Graphical User Interface (GUI).
  • Command Line Interface (CLI).
  • Software Development Kit (SDK).
  • Easy configuration thru GUI or CLI interfaces. No configuration files to mess with ever.
  • If needed, easy re-configuration thru GUI or CLI.
  • Single and multi-frame rendering.
  • Support for thousands of queued jobs.
  • Support for hundreds of client workstations and slave render nodes.
  • Multi-threaded master controller for optimal workflow management efficiency.
  • Flexible architecture to support future expansion.
  • Secure storage of all sensitive information using AES-256 bit encryption.
  • Scalable architecture to support any size render farm.
  • Reliable subsystems that allow render farm to run flawlessly without issue.

1.2 Render Farm Management

  • Support for CPU and GPU rendering.
  • Standard render farm management operations (submit, suspend, resume, cancel, etc…).
  • Real-time job queue monitoring (state, priority, percentage complete, completion status, etc…).
  • Real-time render node management and monitoring (idle, processing, locked, etc…).
  • GUI and CLI management operations.

1.3 Graphical User Interface

  • Ease of use:
  • Consistency: The same interface runs on Windows, Mac OS and Linux platforms.
  • Multiple Document Interface: Persistent user-defined window layouts.
  • Tracking: History queues for jobs and job slices.
  • Render farm monitoring:
  • Project view: Lists all jobs that belong to a specific project folder.
  • Job Queue view: Lists all render queue jobs.
  • Render Farm view: Lists all render farm nodes and their operating status.
  • Network Work Queue view: Lists all active render nodes and the jobs that they’re working on.
  • Transaction Queue view: Lists all active transactions.
  • Render Timeline: Shows render farm processing status for the last 24 hours.
  • CPU usage: Shows CPU usage for entire render farm or for individual nodes.
  • Image Preview: Preview rendered images by clicking on job in project folder, job queue, job slice and network work queue views.
  • Network Map: Shows network hierarchy of all render farm nodes.
  • Job Queue Stack: Shows job queue entries listed by priority.
  • Job Queue Matrix: Shows dependencies for each queue job.
  • Management:
  • Preferences: Set up user preferences.
  • License Manager: Manages all registered licenses.
  • Project Manager: Project folder management.
  • Licenses in use: Displays status of allocated licenses.
  • Render Pool Manager: Gtoups nodes together to process specific jobs.
  • Image and Sequence Viewer: Display images and playback image sequence animations.
  • Application Path Manager: Declare paths for render farm applications.
  • Application Path Manager Scanner: Scan render farm looking for installed applications.
  • Translation Path Manager: Declare mappings between Windows, Mac OS and Linux paths.
  • Mapped Drive Manager: System-wide auto-mapping of Windows mapped drives.
  • Environment Variable Manager: Define environment variables that are to be defined at render time.
  • Window Management:
  • Cascaded window views: Arrange windows in a parent-child hierarchy.
  • Tiled window views: Arrange windows side-by-side.
  • Tabbed window view: Arrange each window so that each takes up the entire client area.
  • Full screen mode: Maximize GUI to extents of host monitor.
  • Persistent window configurations: Save and restore user-defined window layouts.

1.4 Job Processing and Management

  • Request Types:
  • Multi-frame rendering: Render multiple frames on multiple computers.
  • Single frame (tile) rendering: Render a single frame on multiple computes
  • H.264/MPEG4 Video generation: Generate video files from rendered image sequences.
  • Submission options:
  • Job id assignment: Create jobs with names (ids) up to 512 characters in length.
  • Shot name assignment: Group and display jobs by shot name or job id.
  • Color Id: Easily identify jobs within window views by assigning a specific color.
  • Future times: Start a newly submitted job at a later date.
  • Priority assignment: 25 different processing priorities (0-24). “0” being the highest priority and 24 being the lowest.
  • Job dependencies/chaining: Parent-child job dependencies to any depth.
  • Render Pools: Assign jobs to render on specific groups of render nodes.
  • Include/Exclude: Assign jobs to ONLY render on specific nodes or to NOT render on specific nodes.
  • Job Description: Provide brief description of job request.
  • Max slices: Set the maximum number of concurrently active job slices.
  • Job slice timeout multiplier: Automatically requeue any job slice that exceeds the average processing time of the other slices within the same job.
  • Job slice timeout in minutes: Automatically requeue any job slice that exceeds a specific processing time.
  • Job slice error max: Set the maximum number of allowed per-job slice errors before job processing is halted.
  • Use all available cores: Application specific option to use all available processing cores when rendering slice.
  • Slice load balancing: Auto-calculation of frames-per-slice setting to maximize render node performance.
  • Randomize job slices: Randomly process job slices (as apposed to processing sequentially (default)).
  • Frame check: Automatically requeue missing or corrupted output frames.
  • Skip frame: Don’t process frames that already exist in output folder.
  • On Condition Profiles: Perform specific actions (requeue, stop, etc…) on the outcome of completed job slices.
  • Email and SMS notifications: Email/SMS notifications for specific job processing events.
  • H.264/MPEG4: Auto-generate video files from rendered image sequences.
  • Image Display: Spot check rendered images.
  • Rendering account: WINDOWS-only option to render job slices using a specific administration account.
  • Management operations:
  • Real-time priorities: Change priorities of active job queue entries.
  • Suspend/Resume: Temporarily pause and restart job queue entries.
  • Cancel: Delete/remove job queue entries.
  • Restart: Re-queue completed or errored out job queue entries.
  • Real-time log: Monitor job activity from text log.
  • Tile Render Viewer: View image progress of tile render jobs.
  • Memory usage: Automatically requeue slices that exceed specified memory limits.
  • Render Report: Text file based report of all render jobs.
  • Optimized job distribution:
  • Large queue support: Support for thousands of queued jobs.
  • Smart wakeup: Automatically “wake up” render farm nodes when job is submitted.
  • Efficiency: Minimal delay between slice distributions: Maximizes efficiency of render nodes.
  • Smart job distribution: Automatic distribution prioritization to most powerful render nodes.

1.5 Render Node Management

  • Render Pools: Group render nodes to process specific types of jobs.
  • Node Type: Any node can be configured to act as a Master, client or slave. No software re-installation required.
  • Alias names: Assign a unique name to each node.
  • Multi-subnet support: Add or remove nodes from external subnets.
  • Pool Assignment: Add or remove nodes from specific render pools.
  • Software update: Update SquidNet software versions remotely one at a time or all at once.
  • Logging: Real-time activity logging.
  • Load balancing: Manually redistribute selected job slices to other nodes.
  • Power Management: Power-up/restart and shutdown entire render farm or selected nodes.
  • Wake-On-LAN (WOL) support: Remotely power on render nodes.
  • Activity schedule: Schedule render farm nodes to process jobs at certain times of the day.
  • Lock/unlock: Remove (or re-include) nodes to render farm pipeline.
  • Exceptions log: Render farm exception and error logging.
  • Job history: Show job and work queue activity on each render node.

1.6 Power Management

  • Auto-shutdown: Automatically shut down render nodes that have been idle for a specified period of time.
  • Manual shutdown of entire render farm or selected nodes.
  • WOL support from GUI or CLI.
  • Automatic WOL messages on job submission.