hxGrid
and Distributed ATI Normalmapper
News
Overview
Download
Version History
Links
How to install ATI Normalmaper for hxGrid
Forum
News
23/08/2008
Article published on CodeProject.com.
23/08/2008 hxGrid is hosted on SourceForge
now.
23/08/2008 hxGrid 1.09d has been released.
10/11/2007 hxGrid 1.09c has been released.
28/08/2007
hxGrid 1.09a agent with Windows 2000 support has been released.
07/08/2007
hxGrid 1.09Beta agent for Windows 2000.
16/07/2007
hxGrid 1.09 has been released. This is very stable release without
any known major bug. Windows Vista supported. See version
history.
Overview
Read
article "Distributed computing in small office":
(Russian): http://www.dtf.ru/articles/read.php?id=46196
(English):
http://www.codeproject.com/KB/threads/hxgrid.aspx
hxGrid
is distributed computing library for C++ and Delphi.
hxGrid
library allows to run tasks on PC cluster, using idle time of Windows
XP/ Windows Vista workstations.
All tasks are processed transparently for workstation user. Any workstation
can reboot at any time, and this will not brake the computation.
This is an ideal solution for a small ofice (10+ PCs), when decicated
cluster is not affordable.
Curently,
ATI Normalmapper has been rewriteln for hxGrid and available for download.
Santiago
Orgaz has released xNormal with
hxGrid support.
hxGrid
is used in Deep Shadows
in internal game development tools.
Distributed Normalmapper shows 27 (!) times computation time improvement
when run on cluster,
and ~1.5 times improvement when run on single workstation with multicore
CPU.
[1] Intel
Pentium D Presler 3.0GHz
[2] Intel Pentium 4 2.8 GHz (HT)
[3] Intel Core 2 Duo 1.8GHz
[5] Athlon X2 3600+
Normalmapper.exe
-on carlow.nmf carhigh.nmf 2048 2048 test.tga
Working
time, hours
Speed
improvement, times
Download
Project is hosted on SourceForge.org: download
Version
history
Version
1.09d
------------------------
- fixed critical bug: unable to complete last few tasks, if task takes
more then 20 sec;
Version 1.09c
------------------------
hxGridUser and agent are changed in this release.
- new option: 'allowDiscardCoordinatorIP' - seel hxgrid.ini for description;
- fixed bug: hxGridUser is unable to run tasks, if single task size
is larger then allowed memory usage for hxGridUser.
Version 1.09b
-----------------------
- added method "IGridUser->GetConnectionStatus()";
Version 1.09a
------------------------
- added agent support for Windows 2000;
Version 1.09
------------------------
- fixed critical bug: memory corruption in agent;
- fixed critical bug in scktcomp.pas delphi component (thread-safety
issue);
- fixed critical bug: agent is unable to load task dll in Windows
Vista;
- fixed thread-safety bug in agent and griduser (AddRef()/Release()
should use InterlockedXXX);
- fixed memory leak in agent (IdUDPServer not freed);
- fixed IGridUser->GetSettings() and IGridUser->SetSettings()
.h headers;
- IGridUser->isComplete(var complete:boolean) now returns TRUE
when no tasks is running (was: FALSE);
- hxgriduseddll.dll updated in PICalculator\C++ example;
- fixed AutoUpgrade example: unable to upgrade
due to relevance to current directory;
- fixed memory leak in GridGMP example;
- fixed DebugWrite bug: exeption on invalid strings causes agent to
lost connection;
- fixed possible thread-safety issue in agent.filecache;
- new method: IAgent->GetSessionCacheDirectory();
- new method: IAgent->GetGlobalCriticalSection();
- new IGridUser setting: failed_agent_suspend_timeout;
- updated TAgentSettings in IAgent.h;
- IAgent.h and I_Agent.pas documented in English;
- Normalmapper_hxGrid_Setup installs 3ds MAX and Maya NMF export plugins;
Version
1.08a
------------------------
- article translated to English;
- headers are documented in English;
- cancellation support;
- fixed bug in IAgent->GetData();
- fixed bug: freezing on 99.99%;
- fixed bug: lost tasks if IAgent->GetData() failed;
- fixed bug: hxgrid application is unable to work,
if workstation has not been rebuted more than 25 days;
- settings tuned for large IAgent->GetData() size;
- fixed GridGMP sample (all drawing is done in main thread);
- network and memory overload tracking: at the start of the session,
too many agents request data from user. Library tracks network and
memory load;
- GridGMP example shows cancellation support and progress display;
- ATI Normalmapper installer installs NMF export plugins to plugin
directories of 3DS MAX and Maya;
- more accurate progress display in ATI Normalmapper;
- NMFExport plugins for Maya 7.0, 8.0 and 8.5 included;
Note:
agent and coordinator are modified, but have the same interace versions.
Upgrade recommended (see Examples\Autoupgrade\);
Version
1.08 beta
------------------------
- initial public release;
Links
Forum
1. General-Purpose
Computation Using Graphics Hardware
http://www.gpgpu.org/
2. Ambient
occlusion - From Wikipedia, the free encyclopedia
http://en.wikipedia.org/wiki/Ambient_occlusion
3. NVIDIA
CUDA Homepage
http://developer.nvidia.com/object/cuda.html
4. Incredibuild
by Xoreax software
http://www.xoreax.com/main.htm
5. Globus
Toolkit Homepage
http://www.globus.org/toolkit/
6. Кластерная
система Condor
http://www.osp.ru/os/2000/07-08/178077/
7. MPICH2
http://www-unix.mcs.anl.gov/mpi/mpich/
8. libGlass
- distributed computing library
http://libglass.sourceforge.net/download.php
9. Alchemy
- distributed computing library
http://www.alchemi.net/index.html
10. Программирование
с использованием COM-подобных интерфейсов.
http://www.dtf.ru/articles/read.php?id=44995
11. То,
что вам никто не говорил о многозадачности в Windows
http://www.dtf.ru/articles/read.php?id=39888
12. The
GNU MP Bignum Library
http://gmplib.org/
13. ATI
Normalmapper
http://ati.amd.com/developer/tools.html
14. Jedy
Visual Code Library
http://homepages.borland.com/jedi/jvcl/
15. PlayStation
2: Computational Cluster
http://arrakis.ncsa.uiuc.edu/ps2/cluster.php
16. Unmodified
Xbox Cluster
http://www2.cs.uh.edu/~bguillot/xbox/home.html
17. Информационно-аналитический
центр parallel.ru
http://www.parallel.ru/
18. Распределенные
вычисления: поиск лекарства от рака
http://www.3dnews.ru/reviews/software/cure-for-cancer/
19. РАСПРЕДЕЛЕННЫЕ
МОЗГИ
http://www.fuga.ru/articles/2003/01/distributed.htm
20. Взлом
NTV+ с помощью распределенных вычислений
http://www.xakep.ru/post/20600/default.asp
21. Знаете
ли вы, что большинство времени ресурсы компьютера используются менее
чем на 5%?
http://distributed.ru/?what-is
22. Распределенные
вычисления с минимальными затратами
http://msk.nestor.minsk.by/kg/2002/07/kg20708.html
23. Распределенные
вычисления на FreePascal под Windows.
http://freepascal.ru/article//raznoe/20051207110629/
24. Распределенные
вычисления - паразитные вычисления
http://center.fio.ru/method/resources/judina/05-03/news/parazit.htm
25. Sony
рассматривает возможность продавать процессорное время PS3
http://www.gamasutra.com/php-bin/news_index.php?story=13476
26. ZLIB
http://www.zlib.org
27. NVIDIA
Texture Tools 2 Alpha
http://developer.nvidia.com/object/texture_tools.html
28. GPU Mapper - similar tool running on GPU
http://gpum.codingcorner.net/
Back
to main page.
How
to install ATI NormalMapper for hxGrid
System
requirements:
A couple
of PCs running Windows XP SP1/SP2 or Windows Vista, connected via local
network.
1. Download hxGrid Coordinator and install
on any workstation in the local network. Coordinator should be installed
only on one workstation in the local network. This PC should always
be available to coordinate hxGrid.
2. Download hxGrid Agent and install on
all workstations in the local network.The more PCs are running the agent,
the more fater will hxGrid apps work.
3. Download ATI Normalmapper for hxGrid
and install on any PC in the local network.
No additional
configuration is required.
hxGrid also can be used to utilize all CPU cores of single PC. In this
case, Coordinator, Agent and ATI NormalMapper for hxGrid should be installed
on this PC. If PC does not have network adapter with IP address, "Microsoft
loopback adapter" can be installed and assigned some IP address.
Typical dualcore PC can achieve 50-80% speed improvement.
Copyright
(C) 2007 by Roman Lut