1. An apparatus for parallel processing of a large computing requirement, the apparatus comprising: a central processing unit (“CPU”); a task pool in electronic communication with the CPU; and a first solidarity cell in electronic communication with the task pool, the first solidarity cell comprising a first agent configured to proactively retrieve, from the task pool, without requiring an instruction from the CPU, a matching task for the solidarity cell to process; wherein the CPU populates the task pool by dividing the requirement into one or more threads and placing the threads in the task pool, each thread comprising one or more tasks, and the matching task being one of the tasks; wherein each task comprises a descriptor, the descriptor containing at least: a function to be executed; and a memory location of data upon which the function is to be executed; wherein the first agent is a data frame comprising: a source address, a destination address and a payload; wherein the first agent retrieves the matching task by: being dispatched by the first solidarity cell to the task pool, during which the source address is the first solidarity cell's address, the destination address is the task pool's address, and the payload comprises a list of functions the first solidarity cell is configured to perform; searching the task pool for a task that is ready to be processed and has a function that the first solidarity cell can perform; and returning to the first solidarity cell, during which the source address is the task pool's address, the destination address is the first solidarity cell's address, and the payload comprises the descriptor of the matching task.