diff options
author | Jaka Kranjc | 2009-05-19 16:57:03 +0200 |
---|---|---|
committer | Jaka Kranjc | 2009-05-19 17:02:27 +0200 |
commit | 58bb0a7b3d4dc0688b854c13ad308ea955ccf613 (patch) | |
tree | f96f01a8913c871918de1f5084432ad665599e8e /cluster | |
parent | 4f6fd3ed86b4559c46cbe0e872d5ac0a6433040f (diff) |
atlas: update and fixes by chp #15230
fixes also some older bugs
Diffstat (limited to 'cluster')
-rwxr-xr-x | cluster/atlas/BUILD | 49 | ||||
-rwxr-xr-x | cluster/atlas/CONFIGURE | 13 | ||||
-rwxr-xr-x | cluster/atlas/CONFLICTS | 1 | ||||
-rwxr-xr-x | cluster/atlas/DEPENDS | 5 | ||||
-rwxr-xr-x | cluster/atlas/DETAILS | 5 | ||||
-rw-r--r-- | cluster/atlas/HISTORY | 15 | ||||
-rwxr-xr-x | cluster/atlas/INSTALL | 15 | ||||
-rwxr-xr-x | cluster/atlas/PREPARE | 13 | ||||
-rwxr-xr-x | cluster/atlas/PRE_BUILD | 2 | ||||
-rwxr-xr-x | cluster/atlas/TRIGGERS | 3 | ||||
-rw-r--r-- | cluster/atlas/atlas-alpha.config | 12 | ||||
-rw-r--r-- | cluster/atlas/atlas-nog77.config | 9 |
12 files changed, 85 insertions, 57 deletions
diff --git a/cluster/atlas/BUILD b/cluster/atlas/BUILD index f84d0df775..e16378d5e7 100755 --- a/cluster/atlas/BUILD +++ b/cluster/atlas/BUILD @@ -1,22 +1,31 @@ -persistent_add SOURCE_LIB && -make_single && -local config=$(<$SCRIPT_DIRECTORY/atlas-nog77.config) && -if [[ "${SMGL_COMPAT_ARCHS[1]}" == alpha ]]; then - config=$(<$SCRIPT_DIRECTORY/atlas-alpha.config) && - # Tricky: The question may come even if generic chosen, - # when cpu is ev5/6/7 nevertheless! - if [[ "${SMGL_COMPAT_ARCHS[3]}" =~ ^ev[567] ]]; then - config=$(sed 's/EV5GEMM/y/' <<< "$config") - else # Assume that question is not posed. - config=$(sed '/EV5GEMM/d' <<< "$config") +cd $SOURCE_DIRECTORY/bld && +if is_depends_enabled $SPELL lapack; then + OPTS="--with-netlib-lapack=$INSTALL_ROOT/usr/lib/liblapack.a $OPTS" +fi && +if [ $WALL_TIMER == y ]; then + if [[ ${SMGL_COMPAT_ARCHS[1]} == "ia32" || ${SMGL_COMPAT_ARCHS[1]} == "x86_64" ]]; then + OPTS="-D c -DPentiumCPS=$CPU_FREQ $OPTS" + else + OPTS="-D c -DWALL $OPTS" fi +fi && + +../configure -Si cputhrchk 0 \ + -Fa alg -fPIC \ + -b ${SMGL_COMPAT_ARCHS[0]} \ + --prefix=$INSTALL_ROOT/usr && +sedit '/RANLIB/s/echo/ranlib/' Make.inc && + +make_single && +make && +if [ $SHARED_LIB == y ]; then + cd lib && + make shared && + cd .. +fi && +if [ $PTSHARED_LIB == y ]; then + cd lib && + make ptshared && + cd .. fi && -if is_depends_enabled $SPELL fortran; then - config=$(sed 's/FORTRAN/1\ngfortran/' <<< "$config") -else - config=$(sed 's/FORTRAN/0/' <<< "$config") -fi && -echo "$config" | make && -ARCH=`ls -1 Make.Linux* | sed -e 's/Make.//'` && -make install arch=$ARCH && -SOURCE_LIB=$SOURCE_DIRECTORY/lib/$ARCH +make_normal diff --git a/cluster/atlas/CONFIGURE b/cluster/atlas/CONFIGURE new file mode 100755 index 0000000000..72d9da5cb6 --- /dev/null +++ b/cluster/atlas/CONFIGURE @@ -0,0 +1,13 @@ +config_query SHARED_LIB "Do you want shared libraries to be built?" y +if [ $SHARED_LIB == y ]; then + config_query PTSHARED_LIB "Do you want parallelized shared libraries to be built?" y +fi + +config_query WALL_TIMER "Do you want to enable wall timer? (if your comupter load is not high, this will provide a higher resolution timer)" y + +# Haven't tried with other archs than ia32 yet +if [ $WALL_TIMER == y ]; then + if [[ ${SMGL_COMPAT_ARCHS[1]} == "ia32" || ${SMGL_COMPAT_ARCHS[1]} == "x86_64" ]]; then + config_query_string CPU_FREQ "What is your CPU frequency in MHz?" 1000 + fi +fi diff --git a/cluster/atlas/CONFLICTS b/cluster/atlas/CONFLICTS index a3fe48111f..d7c014b88c 100755 --- a/cluster/atlas/CONFLICTS +++ b/cluster/atlas/CONFLICTS @@ -1,2 +1 @@ -conflicts lapack && conflicts clapack diff --git a/cluster/atlas/DEPENDS b/cluster/atlas/DEPENDS index 0497e321c6..e0d753e231 100755 --- a/cluster/atlas/DEPENDS +++ b/cluster/atlas/DEPENDS @@ -1 +1,4 @@ -optional_depends fortran "" "" "for fortran bindings" +optional_depends fortran "" "--nof77" "for fortran bindings" +if is_depends_enabled $SPELL fortran; then + optional_depends lapack "" "" "to build enhanced liblapack.a" +fi diff --git a/cluster/atlas/DETAILS b/cluster/atlas/DETAILS index 67020468ed..b6122a4654 100755 --- a/cluster/atlas/DETAILS +++ b/cluster/atlas/DETAILS @@ -1,12 +1,11 @@ SPELL=atlas - VERSION=3.6.0 + VERSION=3.8.3 SOURCE=${SPELL}$VERSION.tar.bz2 SOURCE_DIRECTORY=$BUILD_DIRECTORY/ATLAS SOURCE_URL[0]=$SOURCEFORGE_URL/math-atlas/$SOURCE - SOURCE_HASH=sha512:0272f94e4e452d240741336a65450d9767150c886681e3f88bcdbebeb18ceba7d489f848ec2824ef0ce1dd33f8cb122e8d87e64d5f19407d02801b775fce2f73 + SOURCE_HASH=sha512:4c152f1f5c49d9b0275e3c8755fc7808f5b298c9f92ea9958dbb771bc656da950e5136e36cbc3ff39542f17d12b719d9acd2c8ecc66382c6fe2dc4ad82bd9aa2 WEB_SITE=http://math-atlas.sourceforge.net ENTERED=20020514 - PATCHLEVEL=1 LICENSE[0]=BSD KEYWORDS="algebra cluster" SHORT="Automatically Tuned Linear Algebra Software (ATLAS)" diff --git a/cluster/atlas/HISTORY b/cluster/atlas/HISTORY index 5eb474a840..2c2d89f4f5 100644 --- a/cluster/atlas/HISTORY +++ b/cluster/atlas/HISTORY @@ -1,3 +1,18 @@ +2009-05-17 Peng Chang (Charles) <chp516@gmail.com> + * BUILD: changed accordingly + * CONFIGURE: added this file to query various options + * DEPENDS: added optional_depends lapack + * DETAILS: version 3.8.3, this version has a new building and + installing scheme + * CONFLICTS: resolved conflict with lapack. atlas should work + _with_ lapack, rather than conflict lapack + * INSTALL: changed accordingly + * PRE_BUILD: added accordingly + * README: attentions before building atlas + * TRIGGERS: used to resolve conflicts with lapack + * atlas-nog77.config, atlas-alpha.config: probably no longer + needed + 2007-06-04 Thomas Orgis <sobukus@sourcemage.org> * BUILD, atlas-alpha.config: make it work on alphas, prepare for better fortran handling for others, too diff --git a/cluster/atlas/INSTALL b/cluster/atlas/INSTALL index f38b090010..b007c00a92 100755 --- a/cluster/atlas/INSTALL +++ b/cluster/atlas/INSTALL @@ -1,11 +1,4 @@ -make_normal && -install -m 0644 $SOURCE_LIB/libatlas.a /usr/lib && -install -m 0644 $SOURCE_LIB/libcblas.a /usr/lib && -install -m 0644 $SOURCE_LIB/libf77blas.a /usr/lib && -install -m 0644 $SOURCE_LIB/liblapack.a /usr/lib && -install -m 0644 $SOURCE_DIRECTORY/include/cblas.h \ - /usr/include && -install -m 0644 $SOURCE_DIRECTORY/include/clapack.h \ - /usr/include - -persistent_remove SOURCE_LIB +make install && +if [ $SHARED_LIB == y ]; then + cp -v lib/*.so $INSTALL_ROOT/usr/lib +fi diff --git a/cluster/atlas/PREPARE b/cluster/atlas/PREPARE new file mode 100755 index 0000000000..03c1baac9a --- /dev/null +++ b/cluster/atlas/PREPARE @@ -0,0 +1,13 @@ +cat <<EOF +Before casting atlas spell, you'd better turn off cpu throttling for +every cpu(core) according to the official installation documentation. + +Tune your freq governor to "performance" somewhere like: +/sys/devices/system/cpu/cpu?/cpufreq/scaling_governor + +During configuration, you'll be asked whether enabling wall timer. +According to official documentation, "if you are installing ATLAS on a +machine which is not heavily loaded, you will want to improve your +install by instructing ATLAS to use one of its higher resolution wall +timers. +EOF diff --git a/cluster/atlas/PRE_BUILD b/cluster/atlas/PRE_BUILD new file mode 100755 index 0000000000..cc0a8ec1da --- /dev/null +++ b/cluster/atlas/PRE_BUILD @@ -0,0 +1,2 @@ +default_pre_build && +mkdir $SOURCE_DIRECTORY/bld diff --git a/cluster/atlas/TRIGGERS b/cluster/atlas/TRIGGERS new file mode 100755 index 0000000000..370e78f0b0 --- /dev/null +++ b/cluster/atlas/TRIGGERS @@ -0,0 +1,3 @@ +if is_depends_enabled $SPELL lapack; then + on_cast lapack cast_self; +fi diff --git a/cluster/atlas/atlas-alpha.config b/cluster/atlas/atlas-alpha.config deleted file mode 100644 index ce59b75911..0000000000 --- a/cluster/atlas/atlas-alpha.config +++ /dev/null @@ -1,12 +0,0 @@ -025 -y -y -EV5GEMM -n -y - - - -FORTRAN - -y diff --git a/cluster/atlas/atlas-nog77.config b/cluster/atlas/atlas-nog77.config deleted file mode 100644 index f1e3f08ec1..0000000000 --- a/cluster/atlas/atlas-nog77.config +++ /dev/null @@ -1,9 +0,0 @@ -025 -y -y -n -y - - -FORTRAN - |