GPU : A Giga@lobal Processing Unit ?

How to help

The project aims at building a giant supercomputer from normal computers connected to the Internet. However, it should not be viewed as a David against Goliath challenge: a bunch of people can not obviously compete against entire companies and research teams. Millions of dollars are invested in such projects!
GPU can be regarded as a toy to learn advanced programming techniques in Delphi like sockets, multithreading and dynamic link libraries. The object oriented model should be improved: to learn a programming language is like learning a tongue: the more practice, the better.
Without a strong community acting behind the scenes, the project will not survive.

If you still want to help the project in some way, here are some tips and tricks: do not take them as an order, just help if you want and feel interested.

Links, Documentation

  • Display the button ‘’ on your homepage (). Link this image to This will bring some additional traffic and maybe involve others in the project. Another side effect is that search engines will give a better rank to the GPU site and will get more visibility. As a small reward, you can submit your image ( and your button will appear in the next releases; the button should have the following dimensions: 88x31 pixels in JPG format. To create such a button is quite easy, even with Paintbrush!
    Also by giving some other contribution to the project, you can submit a button to be displayed on the client. This is the only small reward we can give you as an Open Source project with no cash, no money, no credit cards, just dreams and things one can not sell J.
  • Write any kind of documentation: tutorials, help files and so on.
  • Mirror these help files on your homepage.
  • Review these help files.
  • Improve layout of these pages.

Discussions, Ideas, Downloads

GPU is hosted by Sourceforge, a huge platform for Open Source software that hosts about 50000 projects. Top ten lists are compiled each day using the following formula:

  log (3 × # of forum posts that week) 
+ log (4 × # of tasks ftw)
+ log (3 × # bugs ftw) 
+ log (10 × patches ftw) 
+ log (5 × tracker items ftw) 
+ log (#commits to CVS ftw) 
+ log (5 × # file releases ftw) 
+ log (3 × # downloads ftw) 
= project activity

GPU at its best ;-)

As you can see discussion in forums, downloads, file releases and other activities are rated using a logarithmic scale: in order to get a high rank and a consequent visibility, GPU should raise discussions (criticism is welcome) and should release files often. Even bug reports and patches, usually believed a negative point, play a positive role!


GPU is written in Delphi, a language similar to C++. People willing to install the whole package should ask dangermaus for the Tgnutella package, a commercial component that connects the client to the Gnutella network. The component is quite stable; in fact, Kamil did a very good job! However, the component can not be used in other applications because of its commercial nature.
Earlier GPUs were based on a freely available component: unfortunately, the component was not stable enough to support distributed applications. A change in the underlying architecture is still possible: this would require hours and hours of programming work.
Some plugins are provided as examples: to be successful GPU should provide more complex and interesting plugins. Plugins are dynamic link libraries. They can be written in C, provided the exported functions have the right signature.

Run the client on your machine

This is not very useful at the moment because the GPU engine is not connected to the underlying Gnutella layer. However, this will happen soon (hopefully). By running GPU on your machine you could discover some interesting bugs L.

Concerns about security

There is a Delphi component out there that allows signing the application and plugins using Pretty Good Privacy. PGP is probably the best software available at the moment, in order to verify that GPU was not changed to execute malicious code. Part of the project’s code is made public for review (we can not make the source code of Tgnutella public). This will not change the fact that in the end one has to trust the development team. In fact, a trojan horse in the client would for sure mean some years in jail for the involved people.

The logo was designed by Mark Grady. Graphics are by David A. Lucas.
© 2002-2003 the GPU Development team

Page generated in 0.98 milliseconds by PHP 4.4.3-dev on