1. A system for managing task concurrency on computer platforms, the system comprising: a processor; and memory coupled to the processor and storing instructions that, when executed by the processor, cause the system to: receive, by a software component operating on the system: a set of actions, an identification of a set of computing resources to associate with the set of actions, and a set of dependencies among the plurality of actions for executing the actions using the computing resources; associate the set of actions and data elements related to the set of actions, by the software component, with the set of computing resources; order, by the software component, each respective action in the set of actions for execution on the computing resources; and receive, by the software component, a description of a hierarchy of the computing resources, and wherein the association of the set of actions and data elements with the computing resources and the ordering of the actions for execution on the computing resources are performed based on the hierarchy of computing resources, wherein the identification of the set of computing resources includes a number of memory buffers that are available for temporary use to be shared among computing tasks, and wherein allocation of the temporary buffers is one or more of: explicitly specified by the set of actions, and dynamically allocated by a runtime software component.