properly compile ckcache.ci when int16 is supported.
[charm.git] / README
diff --git a/README b/README
index 727704aba0fcfa6abf34846d724eab1890a9a09e..d601d08a6657f77447eb950d0012eaccca277b19 100644 (file)
--- a/README
+++ b/README
@@ -1,6 +1,6 @@
-                           Charm++ CVS Version
+                           Charm++
 
-       Copyright (C) 1989-2000 Regents of the University of Illinois
+       Copyright (C) 1989-2012 Regents of the University of Illinois
 
 INTRODUCTION
 ============
@@ -14,23 +14,10 @@ Source code is provided, and non-commercial use is free.
 GETTING THE LATEST CHARM SOURCE
 ===============================
 
-You can use our anonymous cvs server to checkout the latest charm++ source code.
-(It may not be the latest stable version though) 
-What you need to do is as following:
+You can use anonymous Git access to obtain the latest Charm++ source
+code, as follows:
 
-1. login the cvs server:
-
-      cvs -d :pserver:checkout@charm.cs.uiuc.edu:/cvsroot login
-
-      when CVS password is prompted, just press enter.
-2. checkout charm:
-
-      cvs co -P charm
-
-      You should get latest charm source tree.
-3. logout the cvs server:
-
-      cvs logout
+    git clone git://charm.cs.illinois.edu/charm.git
 
 
 PICKING A VERSION
@@ -40,9 +27,11 @@ First, you need to decide which version of charm++ to use. The "build"
 script in charm source directory takes several command line options to
 compile Charm++. The command line syntax is:
 
-build <target> <version> [options ...] [--basedir=dir] [--libdir=dir] [--incdir=dir] [charmc-options ...]
+build <target> <version> [options ...]
+                         [--basedir=dir] [--libdir=dir] [--incdir=dir]
+                         [charmc-options ...]
 
-for detailed help messages, use -h or --help to the build script, i.e.
+For detailed help messages, pass -h or --help to the build script, i.e.
 ./build --help
 
 REQUIRED:
@@ -71,9 +60,9 @@ the build script will compile Charm++ under this directory.
 
 For example, on an ordinary Linux PC:
 
-   ./build charm++ net-linux
+   ./build charm++ net-linux-x86_64
 
-will build charm++ in the directory: net-linux/.  The communication
+will build charm++ in the directory: net-linux-x86_64/. The communication
 defaults to UDP packets and the compiler to gcc.
 
 For a more complex example, on a Scyld workstation with the Intel C++ 
@@ -104,18 +93,16 @@ net-win32            Win32          UDP           MS Visual C++
 net-cygwin           Win32/cygwin   UDP           GNU compiler
 mpi-sp               IBM A/IX       MPI           A/IX xlC Compiler 
 mpi-origin           Origin2000     MPI           SGI C++ compiler
-
 net-ppc-darwin       MacOS X        UDP           GNU C++ compiler
 net-linux-ia64       IA64 Linux     UDP/Myrinet   GNU compiler
+net-linux-amd64      Opteron Linux  UDP           GNU compiler
 net-irix             IRIX          UDP           GNU compiler
 net-axp              Alpha          UDP           GNU compiler
 net-hp               HP-UX          UDP           GNU compiler
 mpi-linux            PC Linux       MPI           GNU compiler
+mpi-ppc-darwin       MacOS X        MPI           GNU C++ compiler
 mpi-linux-ia64       IA64 Linux     MPI           GNU compiler
-mpi-axp              Alpha          MPI           GNU compiler
-mpi-linux-axp        Alpha Linux    MPI           GNU compiler
-origin2000           Origin2000  shared-mem       SGI C++ compiler
-t3e                  Cray T3E    shared-mem       Cray C++ compiler
+mpi-linux-x86_64     Opteron Linux  MPI           GNU compiler
 
 
 To choose <version>, your choice is determined by three options:
@@ -130,9 +117,12 @@ development and testing.
        "mpi-" Charm++ communicates using MPI calls.  Use this for
 machines with a good MPI implementation (such as the Origin 2000).
 
-       "exemplar", "ncube-2", "paragon-red", "sp3", and "t3e" Charm++
+       "gemini_gni-", "bluegene[lp]-", "pami-bluegeneq-" Charm++
 communicates using direct calls to the machine's communication primitives.
 
+       "multicore-" Charm++ communicates using shared memory within a
+       single node
+
        "sim-" and "uth-" are not actively maintained.  These are
 single-processor versions: "uth-" simulates processors as user-level
 threads; "sim-" switches between processors and counts communications.
@@ -140,29 +130,32 @@ threads; "sim-" switches between processors and counts communications.
 
 2.)  Your operating system:
 
-       "linux"   Linux 
-       "win32"   MS Windows with MS Visual C++ compiler
-       "cygwin"  MS Windows with Cygnus' Cygwin Unix layer
-       "irix"    SGI IRIX
-       "origin"  SGI Origin 2000 IRIX
-       "sol"     Solaris
-       "sun"     SunOS
-       "rs6k"    IBM R/S 6000 A/IX 
-       "sp"      IBM SP A/IX
-       "hp"      Hewlett-Packard HP-UX
-       "axp"     DEC Alpha DECUNIX
-       
-
-3.)  Some operating systems have other options, such as:
-       "-x86"     For Solaris, use PC hardware (instead of Sun).
-       "-axp"     For Linux, use Alpha hardware (instead of PC).
-        "-ia64"    Use Itanium(tm) instructions (instead of x86)
+       "linux"       Linux
+       "win{32,64}"  MS Windows with MS Visual C++ compiler (32/64-bit, resp.)
+       "cygwin"      MS Windows with Cygnus' Cygwin Unix layer
+       "darwin"      Apple Mac OS X
+       "sol"         Solaris
+       "aix"         IBM A/IX
+       "sp"          IBM SP A/IX
+
+
+3.)  Some operating systems have other architecture options, such as:
+
+       "-x86"     For Solaris and Mac OS X, target x86 hardware (instead of
+                  SPARC or PPC).
+       "-ppc"     POWER/PowerPC
+       "-mips64"  MIPS, such as for SiCortex systems
+        "-ia64"    Use Itanium(tm) IA-64 instructions (instead of x86).
+        "-x86_64"  Use AMD64/EM64T 64-bit x86 instructions (instead of 32 bit).
+       "-cell"    Sony/Toshiba/IBM Cell PPE (e.g. Playstation 3,
+                  Mercury blades, Roadrunner)
 
 Your Charm++ version is made by concatenating the options, e.g.:
 
-"net-linux"     Charm++ for a network of Linux workstations, compiled
-                using g++.
-"mpi-origin"    Charm++ for SGI Origin 2000, compiled using SGI CC.
+"net-linux-x86_64"   Charm++ for a network of 64-bit Linux workstations,
+                     compiled using g++.
+
+"mpi-crayxt"         Charm++ for Cray XT4/5 systems using the system's compiler.
 
 
 **** How to choose <options> ****
@@ -197,7 +190,7 @@ need to choose <options> from the following list:
         performance. Try your application to decide if enabling smp mode 
         improves performance.
 
-* bluegene - compile Charm++ as running on Blue Gene emulator.
+* bigsim - compile Charm++ as running on the BigSim emulator.
 * help - show supported options for a version. For example, for net-linux, 
          running:
          > ./build charm++ net-linux help
@@ -209,8 +202,8 @@ BUILDING THE SOURCE
 ===================
 
 If you have downloaded a binary version of Charm++, you can skip
-this step-- Charm++ should already be compiled.  For win32 systems,
-see README.win32; for Cygwin version, see README.cygwin; for net- version, 
+this step-- Charm++ should already be compiled.  For win32/win64 systems,
+see README.win; for Cygwin version, see README.cygwin; for net- version, 
 see README.net.
 
 Once you have decided on a version, unpack Charm++, cd into charm,
@@ -222,6 +215,7 @@ and run
        "charm++"  The basic Charm++ language.
        "AMPI"     An implementation of MPI on top of Charm++
        "FEM"      A Finite-Element framework on top of Charm++
+       "Tau"      TAU's performance profiling/tracing
 
 <version> is described above
 
@@ -231,12 +225,12 @@ Common compile time options such as -g, -O, -Ipath, -Lpath, -llib are
 accepted.
 
 For example, on a Linux machine, you would run
-     > ./build charm++ net-linux -O
+     > ./build charm++ net-linux-x86_64 -O
 
-This will construct a net-linux directory, link over all
-the Charm++ source code into net-linux/tmp, build the entire
-Charm++ runtime system in net-linux/tmp, and link sample programs 
-into net-linux/pgms.
+This will construct a net-linux-x86_64 directory, link over all
+the Charm++ source code into net-linux-x86_64/tmp, build the entire
+Charm++ runtime system in net-linux-x86_64/tmp, and link example programs
+into net-linux-x86_64/examples.
 
 Several #define's control the compilation of Charm++.  Some of these
 #define's can be found in src/<version>/conv-mach.h.  #define's can
@@ -244,15 +238,17 @@ also be specified on the command line, using the -D option.  For
 example,
     > ./build charm++ net-linux -O -DCMK_OPTIMIZE=1
 
-CMK_OPTIMIZE: Turn on optimizations in Charm++/Converse. This disables most of
-the run-time checking performed by Converse and Charm++ runtime. This option
-should be used only after the program has been debugged. Also, this option
-disables Converse/Charm++ tracing mechanisms such as projections and summary.
+Production optimizations: Pass the configure option --with-production
+to ./build to turn on optimizations in Charm++/Converse. This disables
+most of the run-time checking performed by Converse and Charm++
+runtime. This option should be used only after the program has been
+debugged. Also, this option disables Converse/Charm++ tracing
+mechanisms such as projections and summary.
 
 When Charm++ is built successfully, the diretory structure under the
 target directory will look like:
 
-net-linux/
+net-linux-x86_64/
    |
    ---  bin/                   # all executables
    |
@@ -264,7 +260,9 @@ net-linux/
    |
    ---  lib_so/                        # dynamic libraries
    |
-   ---  pgms/                  # all sample programs
+   ---  examples/              # all example programs
+   |
+   ---  tests/                 # all test programs
    |
    ---  tmp/                   # Charm++ build directory
 
@@ -357,11 +355,11 @@ FOR MORE INFORMATION
 
 The Charm++ web page, with documentation, more programs,
 and the latest version of Charm++, is at
-       http://charm.cs.uiuc.edu/
+       http://charm.cs.illinois.edu/
 
 The Charm++ mailing list, for questions, comments, suggestions, 
 improvements, or bug reports is
-       ppl@cs.uiuc.edu
+       charm@cs.illinois.edu
 
 
 AUTHORS
@@ -375,12 +373,9 @@ Fenton, Balkrishna Ramkumar, Vikram Saletore, Amitabh B. Sinha, Manish
 Gupta, Attila Gursoy, Balkrishna Ramkumar, Amitabh B. Sinha, Nimish
 Shah, Sanjeev Krishnan, Jayant DeSouza, Parthasarathy Ramachandran,
 Jeff Wright, Michael Lang, Jackie Wang, Fang Hu, Michael Denardo,
-Joshua Yelon, Narain Jagathesan, Zehra Sura, Krishnan Varadarajan, and
-Sameer Paranjpye.  Current developers include Milind Bhandarkar,
-Robert Brunner, Terry Wilmarth, Gengbin Zheng, Jayant Desouza, Orion
-Lawlor, Karthik Mahesh, and Neelam Saboo.
-
-
-
+Joshua Yelon, Narain Jagathesan, Zehra Sura, Krishnan Varadarajan, 
+Sameer Paranjpye, Milind Bhandarkar, Robert Brunner and Jayant Desouza. 
+Current developers include Terry Wilmarth, Gengbin Zheng, Orion Lawlor, 
+Karthik Mahesh, and Neelam Saboo.