1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
|
Quick installation for GotoBLAS2
***************************************************************************
***************************************************************************
** **
** **
** Just type "make" <<return>>. **
** **
** If you're not satisfied with this library, **
** please read following instruction and customize it. **
** **
** **
***************************************************************************
***************************************************************************
1. REALLY REALLY quick way to build library
Type "make" or "gmake".
$shell> make
The script will detect Fortran compiler, number of cores and
architecture which you're using. If default gcc binary type is
64bit, 64 bit library will be created. Otherwise 32 bit library
will be created.
After finishing compile, you'll find various information about
generated library.
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
GotoBLAS2 build complete.
OS ... Linux
Architecture ... x86_64
BINARY ... 64bit
C compiler ... GCC (command line : gcc)
Fortran compiler ... PATHSCALE (command line : pathf90)
Library Name ... libgoto_barcelonap-r1.27.a (Multi threaded; Max
num-threads is 16)
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
2. Specifying 32bit or 64bit library
If you need 32bit binary,
$shell> make BINARY=32
If you need 64bit binary,
$shell> make BINARY=64
3. Specifying target architecture
If you need library for different architecture, you can use TARGET
option. You can find current available options in top of getarch.c.
For example, if you need library for Intel core2 architecture,
you'll find FORCE_CORE2 option in getarch.c. Therefore you can
specify TARGET=CORE2 (get rid of FORCE_) with make.
$shell> make TARGET=CORE2
Also if you want GotoBLAS2 to support multiple architecture,
$shell> make DYNAMIC_ARCH=1
All kernel will be included in the library and dynamically switched
the best architecutre at run time.
4. Specifying for enabling multi-threaded
Script will detect number of cores and will enable multi threaded
library if number of cores is more than two. If you still want to
create single threaded library,
$shell> make USE_THREAD=0
Or if you need threaded library by force,
$shell> make USE_THREAD=1
5. Specifying target OS
Target architecture will be determined by the CC. If you
specify cross compiler for MIPS, you can create library for
MIPS architecture.
$shell> make CC=mips64el-linux-gcc TARGET=SICORTEX
Or you can specify your favorite C compiler with absolute path.
$shell> make CC=/opt/intel/cc/32/10.0.026/bin/icc TARGET=BARCELONA
Binary type (32bit/64bit) is determined by checking CC, you
can control binary type with this option.
$shell> make CC="pathcc -m32"
In this case, 32bit library will be created.
6. Specifying Fortran compiler
If you need to support other Fortran compiler, you can specify with
FC option.
$shell> make FC=gfortran
7. Other useful options
You'll find other useful options in Makefile.rule.
|