[MAINIMAGE]
 
  Welcome
  Community
 
Introduction 
Guides & Manuals 
Glossary 
Architectures 
All About Thorns 
FAQs & HOWTOs 
Tutorials 
WaveToy Demo 
  Download
  Machines
  Development
  Showcase
  Links
 



Quick Subscription:
News Mailing List


more Mailing Lists
  Search CactusCode:


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.

      

Cactus Webmaster Last Modified: Wednesday, 27-Mar-2002 06:51:09 CST