Your personal distributed cluster or GPU: a Global Processing Unit
You've probably already heard about grid computing (trellis computing), especially if you follow the development of all kinds of high-performance systems - now it is considered the most interesting and promising technology, the commercial rails of which are laid by Oracle, first introducing this into the business environment. Basically, such computing farms (or grids, this term came from the power grid and essentially means that the calculations are not only distributed in space, but also are available from anywhere in the required quantity, like electrical energy). used for scientific calculations, visualization of complex scenes and other high-capacity calculations. By the way, do not think that this is the lot of top-secret laboratories and large corporate customers. Not at all! Using only open-source software, you yourself can build your own small computing grid-network and use the combined resources in this way for your needs. For example, it can be useful in educational institutions for combining a fleet of computers of various classes into one network for scientific calculations (after all, education often does not have funds for supercomputers, and if it does, then all the same tasks for scientists always require an order of magnitude more computing power, than there is).
The GPU (Global Processing Unit) project is designed to help use the resources of various computers, integrating them using P2P technology into a single computing system. For this, the GPU uses the network and the Gnutella protocol, working in it as a regular client, only sharing the CPU. While a typical GPU system includes a network of 5-15 computers (for the current branch 0.9x, a limit of 60 nodes on the network) that can be used for distributed video rendering, an experimental search engine is also available, which uses computers as search nodes for indexing and search for information on the Internet.
The GPU itself is distributed in open source and is an open framework for working with your applications or as a standalone program. Of course, these are not libraries like MPI at all, and in order to use it, you will have to deal with the architecture and optimize the application, and the implementation language (ObjectPascal for the Delphi environment) imposes its limitations, but if you set the goal to use this technology for your projects, you can done quite successfully.
The GPU (Global Processing Unit) project is designed to help use the resources of various computers, integrating them using P2P technology into a single computing system. For this, the GPU uses the network and the Gnutella protocol, working in it as a regular client, only sharing the CPU. While a typical GPU system includes a network of 5-15 computers (for the current branch 0.9x, a limit of 60 nodes on the network) that can be used for distributed video rendering, an experimental search engine is also available, which uses computers as search nodes for indexing and search for information on the Internet.
The GPU itself is distributed in open source and is an open framework for working with your applications or as a standalone program. Of course, these are not libraries like MPI at all, and in order to use it, you will have to deal with the architecture and optimize the application, and the implementation language (ObjectPascal for the Delphi environment) imposes its limitations, but if you set the goal to use this technology for your projects, you can done quite successfully.
- Project page
- License: GPL (part of the components under a commercial license)
- Language: ObjectPascal / Delphi
- FAQ page
- Download the framework and applications
- GPU Distributed Search Engine
- GPU project for distributed terrain rendering in Terragen