A display device, comprising: a display system configured to display three-dimensional content to a user; a network interface; one or more processors; and memory having program instructions stored therein that are executable by the one or more processors to cause the display device to perform operations including: discovering, via the network interface, one or more compute nodes operable to facilitate rendering the three-dimensional content, wherein the discovering includes receiving information (705,725) identifying abilities of the one or more compute nodes to facilitate the rendering; receiving, from the user of the display device, a request to perform a particular operation including displaying the three-dimensional content; based on the particular operation, determining a graph data structure that includes a plurality of graph nodes, wherein each of the plurality of graph nodes defines a set of constraints for performing a respective one of the set of tasks; based on the received information, evaluating a set of tasks to identify one or more of the tasks to offload to the one or more compute nodes for facilitating the rendering, wherein the evaluating of the set of tasks includes analyzing the graph data structure to determine a distribution plan for the distributing; and distributing, via the network interface, the identified one or more tasks to the one or more compute nodes for processing by the one or more compute nodes. a display system configured to display three-dimensional content to a user; a network interface; one or more processors; and memory having program instructions stored therein that are executable by the one or more processors to cause the display device to perform operations including: discovering, via the network interface, one or more compute nodes operable to facilitate rendering the three-dimensional content, wherein the discovering includes receiving information (705,725) identifying abilities of the one or more compute nodes to facilitate the rendering; receiving, from the user of the display device, a request to perform a particular operation including displaying the three-dimensional content; based on the particular operation, determining a graph data structure that includes a plurality of graph nodes, wherein each of the plurality of graph nodes defines a set of constraints for performing a respective one of the set of tasks; based on the received information, evaluating a set of tasks to identify one or more of the tasks to offload to the one or more compute nodes for facilitating the rendering, wherein the evaluating of the set of tasks includes analyzing the graph data structure to determine a distribution plan for the distributing; and distributing, via the network interface, the identified one or more tasks to the one or more compute nodes for processing by the one or more compute nodes. discovering, via the network interface, one or more compute nodes operable to facilitate rendering the three-dimensional content, wherein the discovering includes receiving information (705,725) identifying abilities of the one or more compute nodes to facilitate the rendering; receiving, from the user of the display device, a request to perform a particular operation including displaying the three-dimensional content; based on the particular operation, determining a graph data structure that includes a plurality of graph nodes, wherein each of the plurality of graph nodes defines a set of constraints for performing a respective one of the set of tasks; based on the received information, evaluating a set of tasks to identify one or more of the tasks to offload to the one or more compute nodes for facilitating the rendering, wherein the evaluating of the set of tasks includes analyzing the graph data structure to determine a distribution plan for the distributing; and distributing, via the network interface, the identified one or more tasks to the one or more compute nodes for processing by the one or more compute nodes.