Skip to content

Releases: genetics-statistics/GEMMA

gemma 0.98.5

25 Aug 12:18
Compare
Choose a tag to compare

ChangeLog v0.98.5 (2021/08/25)

  • Changed banner to show 'Copyright (C) 2012–2021, Xiang Zhou, Pjotr Prins and team'
  • Fixed tests for new Debian stable release - mostly roundoff confusion
  • Documented -lmm 9 which adds additive effect to -lmm 2
  • Fix of GSL ERROR: function value is not finite in brent.c at line 202 errno 9, see #210
  • Added profiler support in Guix profile and make file. Profiling issue #243
  • Added new test suite to replace shunit2 scripts - should make it more robust for different architectures, see github issues #242 and #247.
  • Fixed iter could go out of bounds in CalcLambda, see 43bbfda
  • Make sure P_yy=0 does not fail

MD5SUM of static binary:

f5e90535ff6a36867dcb5f6b0fb24135  gemma-0.98.5

gemma 0.98.4

29 Jan 16:14
Compare
Choose a tag to compare

ChangeLog v0.98.4 (2021/01/29)

Maintenance release

  • Fix error on free with randomizer that segfaulted, see #239
  • Moved travis-ci.org to travis-ci.com
  • GEMMA builds on ARM and other architectures, see #189 and https://buildd.debian.org/status/package.php?p=gemma (thanks @tillea)
  • Fixed static build with 00480e8 - requires gfortran path for OpenBLAS
  • Updated README's and Manual
  • Added -lmm 9 switch which shows beta/se with lmle and plrt, see #237

GEMMA version 0.98.3

28 Nov 15:27
Compare
Choose a tag to compare

ChangeLog v0.98.3 (2020/11/28)

Maintenance release

  • Fix Travis build with gcc 5.5 (OpenBLAS related round-offs)
  • Fix Travis build on OSX (brew related)
  • GEMMA installs on FreeBSD (thanks @outpaddling)
  • Added github issue templates to ascertain the github issue
    tracker is only used for reporting bugs
  • Added more debug output creating the GRM
  • Remove info on the floating point version (gemmaf).
  • Sane randomization handling: GEMMA now honours the -seed option
    (mostly for bslmm). It also allows GSL_RNG_SEED and GSL_RNG_TYPE to
    be used. See the
    docs.
  • The tests now use a fixed seed for the randomizer

ChangeLog v0.98.2 (2019/05/28)

GCC 10.1 fix release

  • Fix build on gcc 10.1 (mostly BLAS include files)
  • Removed Eigenlib dependencies and modifed test results to match openblas output
  • Also tested with guix [email protected] gdb gsl openblas zlib bash ld-wrapper perl vim which

The release includes a static binary for Linux 64-bit.

Also a docker binary that runs on Linux, MaxOS and Windows can be downloaded from

http://ipfs.genenetwork.org/ipfs/Qmaq1q73ox53ykKdRF6tYDXL9bEKJQfnGCqBxFdo1fcYPb/gemma-0.98.3-AMD64-Guix-docker-release.tgz

After loading the image into Docker, run with something like

docker run -w /run -v ${PWD}:/run ed5bf7499691 gemma -gk -bfile example/mouse_hs1940 

GEMMA version 0.98.1

11 Dec 05:37
Compare
Choose a tag to compare

Bug fix release

  • Fixes regression on Plink analysis with missing data (#188 thank you @voichek)

To install the image, download and

md5sum gemma-0.98.1.gz
8e7eda8091e4c4e587d91cf9d94ed147  gemma-0.98.1.gz
gzip -d gemma-0.98.1.gz
chmod a+x gemma-0.98.1
./gemma-0.98.1

GEMMA 0.98.1 (2018-12-10) by Xiang Zhou and team (C) 2012-2018

type ./gemma -h [num] for detailed help

The binary images were reproducibly built on x86_64 with

Generation 1    Nov 03 2018 12:30:38    (current)
  guix ff34941
    repository URL: https://git.savannah.gnu.org/git/guix.git
    commit: ff349415b27cc764fd7168ef35ca76c3b8b05889

guix environment -C guix --ad-hoc gcc gdb gfortran:lib gsl eigen openblas zlib bash ld-wrapper perl
make clean && make -j 16 && make fast-check
for x in `ldd bin/gemma|cut -d ' ' -f 3` ; do realpath $x ; done
/gnu/store/kf8pva0pgwg6yrcpa52iri293j8fc56q-gsl-2.5/lib/libgsl.so.23.1.0
/gnu/store/fxiwj2wpp11sif613axdax7gmwzsg6kp-zlib-1.2.11/lib/libz.so.1.2.11
/gnu/store/zpm494j02m6snmvcjxcdqxkgwx43nkmj-openblas-0.3.2/lib/libopenblasp-r0.3.2.so
/gnu/store/4ik1aw34nxs4372xlimvnaq2ilhclwpw-gfortran-8.2.0-lib/lib/libgfortran.so.5.0.0
/gnu/store/bmaxmigwnlbdpls20px2ipq1fll36ncd-gcc-8.2.0-lib/lib/libquadmath.so.0.0.0
/gnu/store/bmaxmigwnlbdpls20px2ipq1fll36ncd-gcc-8.2.0-lib/lib/libstdc++.so.6.0.25
/gnu/store/l4lr0f5cjd0nbsaaf8b5dmcw1a1yypr3-glibc-2.27/lib/libm-2.27.so
/gnu/store/bmaxmigwnlbdpls20px2ipq1fll36ncd-gcc-8.2.0-lib/lib/libgcc_s.so.1
/gnu/store/l4lr0f5cjd0nbsaaf8b5dmcw1a1yypr3-glibc-2.27/lib/libpthread-2.27.so
/gnu/store/l4lr0f5cjd0nbsaaf8b5dmcw1a1yypr3-glibc-2.27/lib/libc-2.27.so
/gnu/store/1yym4xrvnlsvcnbzgxy967cg6dlb19gq-gfortran-5.5.0-lib/lib/libgfortran.so.3.0.0

# build static image
make clean && make WITH_GFORTRAN=1 static -j 16 && make check

GEMMA version 0.98

29 Sep 09:37
Compare
Choose a tag to compare

With the v0.98 release GEMMA has stabilized, is faster than ever, and
contains extensive error checking. This release contains quite a few
bug fixes, hardware-based floating point checking and speedups.

  • GEMMA is faster than ever #136
  • Fixes log standing 'GSL ERROR: matrix is singular in lu.c at line
    266' mvlmm regression with correlated phenotypes #179 with
    9952786 -
    (thank you @HannahVMeyer and @xiangzhou)
  • Adds x86 hardware based floating point error checking #161, see 70f4196
  • Provide a static release of GEMMA again for Linux #162
  • Fixes clang++ build on MacOS #160
  • Enforce failed for 0.00 in src/io.cpp at line 1431 in BimbamKin #149
  • -no-check is default now
  • Force SIGINT on error so debuggers can get a stack trace
  • Improved CalcPab functions to not break on division by zero
    genenetwork@8010061
    (thank you @xiangzhou)
  • Add Windows MingW compilation support (thanks @DannyArends)
  • Fully utilizing GNU Guix containers for a build system (see INSTALL.md)
  • Updated manual by @xiangzhou)

Note: This is the last purely C/C++ compilable release because we are
integrating faster-lmm-d code for new functionality in the next
version. Also we are working on a Python and R interface.

To install the image, download and

md5sum gemma-0.98.gz
875cde6d37fb96014356b15dc77ebf93  gemma-0.98.gz
gzip -d gemma-0.98.gz
chmod a+x gemma-0.98
./gemma-0.98

GEMMA 0.98 (2018-09-28) by Xiang Zhou and team (C) 2012-2018

type ./gemma -h [num] for detailed help

The binary images were reproducibly built on x86_64 with

guix pull -l
Generation 4    Sep 25 2018 10:16:39    (current)
  guix 932839f
    repository URL: https://git.savannah.gnu.org/git/guix.git
    branch: origin/master
    commit: 932839ff124ff3b0dd3070914fb1c5beec69bf32

guix environment -C guix --ad-hoc gcc gdb gfortran:lib gsl eigen openblas zlib bash ld-wrapper perl
make clean && make -j 16 && make fast-check
for x in `ldd bin/gemma|cut -d ' ' -f 3` ; do realpath $x ; done
  /gnu/store/kf8pva0pgwg6yrcpa52iri293j8fc56q-gsl-2.5/lib/libgsl.so.23.1.0
  /gnu/store/fxiwj2wpp11sif613axdax7gmwzsg6kp-zlib-1.2.11/lib/libz.so.1.2.11
  /gnu/store/zpm494j02m6snmvcjxcdqxkgwx43nkmj-openblas-0.3.2/lib/libopenblasp-r0.3.2.so
  /gnu/store/4ik1aw34nxs4372xlimvnaq2ilhclwpw-gfortran-8.2.0-lib/lib/libgfortran.so.5.0.0
  /gnu/store/bmaxmigwnlbdpls20px2ipq1fll36ncd-gcc-8.2.0-lib/lib/libquadmath.so.0.0.0
  /gnu/store/bmaxmigwnlbdpls20px2ipq1fll36ncd-gcc-8.2.0-lib/lib/libstdc++.so.6.0.25
  /gnu/store/l4lr0f5cjd0nbsaaf8b5dmcw1a1yypr3-glibc-2.27/lib/libm-2.27.so
  /gnu/store/bmaxmigwnlbdpls20px2ipq1fll36ncd-gcc-8.2.0-lib/lib/libgcc_s.so.1
  /gnu/store/l4lr0f5cjd0nbsaaf8b5dmcw1a1yypr3-glibc-2.27/lib/libpthread-2.27.so
  /gnu/store/l4lr0f5cjd0nbsaaf8b5dmcw1a1yypr3-glibc-2.27/lib/libc-2.27.so
  /gnu/store/1yym4xrvnlsvcnbzgxy967cg6dlb19gq-gfortran-5.5.0-lib/lib/libgfortran.so.3.0.0

# build static image
make clean && make FORCE_STATIC=1 -j 16 && make check

Static test release (beta1)

06 Sep 15:19
Compare
Choose a tag to compare
Pre-release

This is a beta release of gemma.

md5sum gemma-0.98-beta1.gz 
  5ba337950ed1e6f49c9d02540531cc6d  gemma-0.98-beta1.gz
gunzip gemma-0.98-beta1.gz
./gemma-0.98-beta1

Notably this release comes with hardware based floating point checking and improved debugging information. This should help us solve any issues.

This version is not optimized for speed, but for debugging. Please test on your data. It contains one assumption that needs to be validated by @xiangzhou. So, do not assume output is final. That is what beta means!

GEMMA version 0.97

27 Dec 10:51
Compare
Choose a tag to compare

Second stable release. This is a bug fix release with many improvements.

Binary executable gemma.macosx was built on a MacBook Pro (3.5 Ghz Intel Core i7) with Mac OS X 10.12.6, gcc Apple LLVM version 8.1.0, Eigen 3.3.4 and statically linked against gsl 2.4 and zlib 1.2.11 (both installed using Homebrew).

For Linux, we recommend using the provided Guix installers gemma-git-gn2-0.97-*. See here for the installation instructions. Use the optimized haswell installer on Intel Haswell computers, otherwise use the generic installer.

We also provide a Linux binary executable gemma.linux.gz for those that prefer not to use the Guix installer. However, we recommend that all Linux users first try the Guix installer. It was built on a machine with CentOS 6.6, gcc 4.9.2 and Eigen 3.3.4 and statically linked against gsl 2.3, zlib 1.2.8 and OpenBLAS 0.2.18.

Speedup of GEMMA by using optimized OpenBlas

  • Providing a binary release with OpenBlas optimization for Intel Haswell.
  • Dropped using standard LAPACK and gslcblas libraries.
  • Fixed NaN bug caused by GSL 2.x and made recent GSL libraries the default.
  • Minimized use of Eigen libraries (which can slow compilation and matrix computation).
  • -legacy switch provides v0.96 behaviour (including Eigen)

Added Leave One Chromosome Out (LOCO) support for Bimbam (K and LMM)

  • See commit 449d882
  • -snps [filename] option allows selecting a subset of SNPs for analysis.
  • -loco [chr] option for K and LMM computations.
  • Added gemma-wrapper to make using LOCO easy.
  • LOCO examples

Added checks for matrices

  • #72 and #45 implements
    1. Fail if K has negative eigen values
    2. Fail if K is not symmetric
    3. Fail if K is not positive definite
    4. Warn in eigen values are very small
    5. Warn if K is ill conditioned
  • Check for NaN values

Added test framework and unit tests

  • Added integration and unit tests, as well as
    Travis-CI support.
  • Improved debug information and testing of input files.

Other

  • #81 printing out beta, se(beta) and logl_H1 under -lmm 2.
  • Improved README and INSTALL docs.
  • Added support info and code of conduct.
  • Updated copyright banner, info and license information for included software.
  • Reformatted the full source tree with commit 3935ba3
  • Merged LMM computation for PLINK and BIMBAM formats.
  • Fixed progress bar issues.
  • #46 removed support for Oxford format.
  • Got rid of all compiler warnings.
  • Started a discussion list.

GEMMA version 0.96

17 May 16:20
Compare
Choose a tag to compare

First stable release.

Executable gemma.linux was built with an Intel Xeon E5-2680v4 ("Broadwell") 2.4GHz processor, Scientific Linux 7 (64-bit) and gcc 4.8.5, and statically linked to glibc 2.14, atlas 3.10.3 and gsl 1.16.

Executable gemma.macosx was built on a MacBook Pro (2.53 Ghz Intel Core 2 Duo) with Mac OS X 10.11.6, gcc Apple LLVM version 8.0.0, and statically linked to gsl 1.16 (installed using Homebrew).

GEMMA version 0.95.2a (alpha)

10 May 17:26
Compare
Choose a tag to compare
Pre-release

Various miscellaneous bug fixes, and Issue #36 is now closed.

Executable gemma.linux was built with Scientific Linux 7 and gcc 4.8.5, and statically linked to glibc 2.14, atlas 3.10.3 and gsl 2.2.1.

Executable gemma.macosx was built on a MacBook Pro (2.53 Ghz Intel Core 2 Duo) with Mac OS X 10.11.6, gcc Apple LLVM version 8.0.0, and statically linked to gsl 1.16 (installed using Homebrew).

GEMMA version 0.95a (alpha)

09 May 16:58
Compare
Choose a tag to compare
Pre-release

Creating release of GEMMA 0.95a following the request in Issue #33; more stable releases forthcoming.