Advanced Concepts Team - Distributed Computing (ACT-DC)
Information Pages
1. ACT-DC Frequently Asked Questions 1.1 General information
Q. What is distributed computing?
Q. What is the ACT-DC environment? Q. What are the basic distributed computing concepts involved in the ACT-DC approach? 1.2 Installing and using the ACT-DC screen saver (client) Q. I would like to join the ACT-DC projects. What should I do?
Q. On what operating systems can I run the screen saver? Q. How can I install and configure the screen saver? Q. How can I upgrade the screen saver for newer projects? Q. How can I remove/uninstall the screen saver? Q. What kind of statistics are displayed while the screen saver runs? Q. I would like to let my screen saver run during the nights. What should I do? Q. I am afraid the computations take away the resources (CPU, memory, network, etc.) of my PC when I am doing my everyday work. Is this true? Q. What kind of information will be sent to the server about my computer? Q. I do not have time to update the screen saver. Will my old version affect/disturb the new ACT-DC projects? Q. What does my screen saver do when there is nothing to compute? Q. Is it possible for me to change the layout of the screen saver (by adding pictures, changing the displayed text, etc.)? Q. I am running intensive background computations on my desktop. Is it still possible to join ACT-DC? 1.3 Present and future applications Q. What kind of computations are/were performed under the ACT-DC project?
Q. I have a computationally hard problem to solve / a lot of data to be processed. Can it be done under the ACT-DC framework? Q. My distributable programs / data processing algorithms are written in C/C++/Matlab/Fortran. Can they be plugged into the ACT-DC environment? 2. Release Notes 1. ACT-DC Frequently Asked Questions 1.1 General information Q. What is distributed computing?
A. In general, distributed computing means solving hard computing problems using a set of (not necessarily strictly interconnected) computers. Q. What is the ACT-DC environment?
A. We have realized that many parts of a distributed computing software can be developed and maintained independently of the particular problem(s) we want to solve. This allows us to develop a modular framework, which makes possible to implement various distributed computing methods on different problems in an easy way. The ACT-DC environment contains the following general modules: network communication, user interfaces, some general purpose solvers for optimization problems, and a couple of pre-defined data structures (e.g. types and concepts used in optimization). Thus, if a solver or data processing algorithm proves to be distributable, the corresponding distributed software can be developed quickly and easily. In a long term we plan to run the ACT-DC environment as the "distributed computing service" of ESA. Q. What are the basic distributed computing concepts involved in the ACT-DC approach?
A. The ACT-DC framework is based on the client-server model, a basic concept of computer networking. In our model, the server is the central machine taking care of distributing the computing work among the clients. The clients are typically workstations and/or simple desktop machines doing the actual computational work. The ACT-DC framework applies the idea of idle-time computing: when the client is not active (concerning the user actions, like mouse or keyboard activities), it starts doing the distributed computing work. When some user activity is detected on the peripherials of the computer, the client stops computing and its resources become available to the user as before. The easiest way to achieve the idle-time computing effect is to place the computation program code behind a screen saver. The computing work is distributed in the following way: first the server divides the whole computing task into small units, which can be evaluated more or less independently. Such a unit is called a problem. The evaluation of a problem results in a unit called a solution. To decrease the communication overhead between the clients and the server, the problems and solutions are grouped and transmitted as problem packages and solution packages, respectively. When all the problem units have been solved and received, the server assembles them and produces the final answer of the computing task.
1.2 Installing and using the ACT-DC screen saver (client) Q. I would like to join the ACT-DC projects. What should I do?
A. Send an email to
Note: ACT-DC was designed to the requirements of ESA needs, taking care of the internal networking possibilities. ACT-DC is operational only for ESA users.
Note: In case a friend or colleague of yours has already introduced you the ACT-DC client, and you decided to use it, then please also send an email to the address above - this would help me to keep track of the deployed clients and supply you with updates and more information.
Q. On what operating systems can I run the screen saver?
A. The ACT-DC softwares were developed under Windows XP, and they are working perfectly also under Windows 2000. (We did not test ACT-DC on other Windows platforms). Since from the beginning ACT-DC is designed as an internal ESA software for currently typical user desktops, we did not make efforts to work on the implementation for other operating systems. Q. How can I install and configure the screen saver?
A. You will be supplied with a setup program called ACTSetup.exe. If you execute this program, it will automatically download and install the latest version of the screen saver application. The screen saver is currently named as SLDAC.scr. After a successful installation, go to Start -> Control Panel -> Display -> Screen Saver, and select SLDAC.scr as your screen saver. (Alternatively, the Display properties of your computer can be reached by right clicking on your Desktop and selecting Properties.) You can keep your previous screen saver settings for the wait time and the power saving options. If you intend to run the screen saver during nights, weekends, or for longer periods (that is, you plan to leave your computer switched on for a long time), it is advised to checkmark the "On resume, password protect" item and verify your monitor power saving options as well.
At the moment SLDAC.scr itself does not offer any screen saver specific configuration possibilities.
Q. How can I upgrade the screen saver for newer projects?
A. From version 2.2 (released on the 25th August, 2005), the screen saver automatically starts an upgrade program if a newer version is available. During upgrade you will be notified about the actions taken, but you do not have to do anything. Q. How can I remove/uninstall the screen saver? A. The application can be removed at any time using the Control Panel's 'Add or Remove Programs' feature. Just click on the application (named 'ACT Distributed Computing Client'), and press 'remove'. Q. What kind of statistics are displayed while the screen saver runs?
A. The meaning of the statistics for version 2.1 is the following (for terminology see the general information above):
Q. I would like to let my screen saver run during the nights. What should I do?
A. Since the Windows screen savers are assigned to the individual users, you should not log out from your Windows session. Instead, in Start -> Control Panel -> Display -> Screen Saver, switch on the option "On resume, password protect". This will protect your computer the same way as you logged out. It is also advised to set your monitor power saving options. For example, you can select the option of putting your monitor into standby state after a while: in this case you will not see the screen saver, but it will still be running, so your computer will continue the computing work.
Q. I am afraid the computations take away the resources (CPU power, memory, network, etc.) of my PC when I am doing my everyday work. Is this true?
A. Absolutely not! This is the main concept behind the idle-time processing approach: your PC will suspend all distributed computing work immediately when you deactivate the screen saver. Q. What kind of information will be sent to the server about my computer?
A. In addition to the computation results, the IP number of your PC will be sent to the server due to identification and communication reasons. Furthermore, when your screen saver comes up, the CPU speed of your computer is sent in order to create various overall statistics (like the CPU activity you see on your screen saver). No other piece of information is extracted/transmitted from your computer. Q. I do not have time to update the screen saver. Will my old version affect/disturb the new ACT-DC projects?
A. From version 2.2 (released on the 25th August, 2005) you do not have to take care about updates, they will be carried out automatically, when necessary. Read more about the automatic upgrade feature here. Q. What does my screen saver do when there is nothing to compute?
A. The screen saver, the network communication, and the computation layers are separated within the software. When the screen saver comes up, it starts the communication routines. If there is no server response, the computation routines will not start, and the main communication routine exits, but the screen saver remains active. Your screen saver statistics window always shows if there is any kind of distributed computing activity on your computer. Q. Is it possible for me to change the layout of the screen saver (by adding pictures, changing the displayed text, etc.)?
A. At the moment this is not possible. This part of the development had less priority in the ACT-DC project. In any case, suggestions (and helping hands) improving the quality of the screen saver layout are always welcome. Q. I am running intensive background computations on my desktop. Is it still possible to join ACT-DC?
A. It is possible, but I suggest you to carefully assess this possibility. The ACT-DC client checks only the user (peripherial) activity, but not the current CPU activity. If you are continuously running intensive background processes, then those processes and the ACT-DC will share the resources, including your CPU. Anyway, if your computing tasks really take a long time, you may also think about distributing it, if possible. Perhaps we can help you. 1.3 Present and future applications Q. What kind of computations are/were performed under the ACT-DC project?
A. In the Release Notes section below you can find the brief description of the past and present activities. Q. I have a computationally hard problem to solve / a lot of data to be processed. Can it be done under the ACT-DC framework?
A. The first and most important thing is to assess whether your problem can be distributed, i.e. it can be divided into a large amount of simple and mostly independent subproblems. If this is the case, and you are able to identify the concepts of problem/solution/problem package/solution package for your case, than there is a good chance that your task can be implemented and solved with ACT-DC. However, there are of course some other criteria to be considered, like the required package sizes (i.e. the amount of data to be transmitted between the server and the clients) which might inhibit the efficient network communication. Q. My distributable programs / data processing algorithms are written in C/C++/Matlab/Fortran. Can they be plugged into the ACT-DC environment?
A. The ACT-DC environment is written in C++, thus, C and C++ source components (solvers, algorithms, etc.) can be easily added to the original code. We successfully integrated Fortran source modules using the f2c translator into ACT-DC version 2.1, and this method should be generally applicable. The Matlab source level integration was tested successfully for version 1.1 using the Matlab Compiler Add-in for MS Visual Studio, and may also work in general (provided the calls in your Matlab code are supported by the Compiler).
- The version is tuned for the modules of the joint ionospheric data processing project, but it contains all the components of version 2.0, too.
- The improved screen saver displays various local and global statistics during the computation. - Safety (re)start delay: the screen saver (re)starts the lower level layers only after a short delay period - this helps avoiding very short client-server contacts which are useless from the computing point of view. - The server summary statistics are dumped to disk periodically. This allows continuous performance analysis and production of summary charts. - Clients deployed at the ESA HQ are proved to be fully operational (the ACT-DC server is deployed at ESTEC). This must hold for the other establishments, too, within the ESA firewalls. version 2.0 - 21.03.2005. - Most C++ classes of v 1.2 are rewritten or made more flexible (but the abstract solver and server classes are not yet complete).
- Graphical version of the server UI.- Implemented optimization (test) problems: the Mars radio occultation problem, the Lennard-Jones atom cluster problem and several standard GO test problems (Rosenbrock, EX-2, Levy-5).
- Available optimization solvers: Monte-Carlo search, Differential Evolution (DE1), Particle Swarm Optimization.
- Built-in version checking is included to eliminate conflicts with earlier client versions.
version 1.2 - 17.01.2005. - Solves the Mars radio occultation problem using C++ routines written as a replacement of the compiled Matlab files of version 1.1. The first successful test of the screen saver layer, participating 9 ACT computers on the local area network.
version 1.1 - 12.01.2005. - Solves the Mars radio occultation problem using compiled Matlab files.
version 1.0 - 26.10.2004. - Solves a demo global optimization problem (modified Goldstein-Price). The screen saver functions were not tested extensively. This version run successfully on a locally connected cluster of computers.
|







