General Introduction
Cactus is an open source problem solving environment designed for
scientists and engineers.
Its modular structure easily enables parallel computation across
different architectures and collaborative code development
between different groups.
Cactus originated in the academic research community, where it
was developed and used over many years by a large international
collaboration of physicists and computational scientists.
The name Cactus comes from the design of a central core
(or "flesh") which connects to application modules (or
"thorns") through an extensible interface. Thorns can
implement custom developed scientific or engineering
applications, such as computational fluid dynamics.
Other thorns from a standard computational toolkit
provide a range of computational capabilities, such
as parallel I/O, data distribution, or checkpointing.
Cactus runs on many architectures. Applications,
developed on standard workstations or laptops, can
be seamlessly run on clusters or supercomputers.
Cactus provides easy access to many cutting edge
software technologies being developed in the academic
research community, including the Globus Metacomputing
Toolkit, HDF5 parallel file I/O, the PETSc scientific
library, adaptive mesh refinement, web interfaces,
and advanced visualization tools.
[Single page description in
Word |
Text]
Want to find out more? Read general descriptions of Cactus
in the NCSA
datalink
newsletter or in
IEEE Computing.
If you want to use Cactus take a look at our
Users Guide, or for the
impatient, try the
Quick
Start guide.
|
Why Use Cactus?
If your only goal is to implement a simulation of a 1D
wave equation, you probably don't want to use Cactus. You
should consider using Cactus if you need to perform any of
the following tasks - now or in future:
- perform parallel programming in an easy but powerful
manner using the language of your choice: F77, F90, C,
C++.
- run on a wide range of architectures and operating
systems.
- develop your code on the most convenient machine
available, for example your workstation or laptop ...
- and simply move your code to a supercomputer
(like a Cray T3E or Origin) to go into production
right away!
- engage in high performance cluster computing or
- get first parallel experience by turning your networked
PC pool into a computing cluster.
- work with collaborators on the same code and
avoid having your programs fragmented.
- make use of the latest software technology: e.g. take
advantage of research groups that spend their time
thinking about the fastest way to bring simulation
data to disk or how to visualize it while the code
is running.
This is just a small rundown of the features that Cactus offers.
If your code is already working but you encounter its platform
limitations or if you think about starting a new project and
want to be open for future software trends, consider using the
Cactus Code. The Cactus
Maintainers will be happy to
evaluate your problem and assist you in making effective
use of the Cactus Computational Toolkit.
|