Sun, 22 Dec 2024 22:10:04 +0100
don't trust that size_t always has word width
it should be the case on all platforms supported by UCX, but it's not strictly defined in POSIX that it must be the case
264
24f5484bae97
web doc has now proper titles
Mike Becker <universe@uap-core.de>
parents:
259
diff
changeset
|
1 | --- |
24f5484bae97
web doc has now proper titles
Mike Becker <universe@uap-core.de>
parents:
259
diff
changeset
|
2 | title: Build Instructions |
24f5484bae97
web doc has now proper titles
Mike Becker <universe@uap-core.de>
parents:
259
diff
changeset
|
3 | --- |
259 | 4 | |
760
52e49533e7b4
update build instructions
Mike Becker <universe@uap-core.de>
parents:
737
diff
changeset
|
5 | The build processes uses configure and make. |
259 | 6 | First, download the source code from [Source Forge][1]. |
7 | ||
8 | wget https://sourceforge.net/projects/ucx/files/ucx-latest.tar.gz | |
9 | tar -xzf ucx-latest.tar.gz | |
10 | cd ucx-latest | |
760
52e49533e7b4
update build instructions
Mike Becker <universe@uap-core.de>
parents:
737
diff
changeset
|
11 | |
52e49533e7b4
update build instructions
Mike Becker <universe@uap-core.de>
parents:
737
diff
changeset
|
12 | Then execute ./configure with the options you like. You can get a list of |
52e49533e7b4
update build instructions
Mike Becker <universe@uap-core.de>
parents:
737
diff
changeset
|
13 | all available options with ./configure --help. The recommended configuration |
52e49533e7b4
update build instructions
Mike Becker <universe@uap-core.de>
parents:
737
diff
changeset
|
14 | for production builds is ./configure --release. |
390
d345541018fa
starts ucx 3.0 development
Mike Becker <universe@uap-core.de>
parents:
264
diff
changeset
|
15 | |
760
52e49533e7b4
update build instructions
Mike Becker <universe@uap-core.de>
parents:
737
diff
changeset
|
16 | ./configure --release |
52e49533e7b4
update build instructions
Mike Becker <universe@uap-core.de>
parents:
737
diff
changeset
|
17 | make |
52e49533e7b4
update build instructions
Mike Becker <universe@uap-core.de>
parents:
737
diff
changeset
|
18 | make check # only available when built with tests |
52e49533e7b4
update build instructions
Mike Becker <universe@uap-core.de>
parents:
737
diff
changeset
|
19 | sudo make install |
390
d345541018fa
starts ucx 3.0 development
Mike Becker <universe@uap-core.de>
parents:
264
diff
changeset
|
20 | |
737
b3b113eac3b8
add overridable macros to the install docs
Mike Becker <universe@uap-core.de>
parents:
721
diff
changeset
|
21 | When compiling UCX 3, you can tweak the buffer sizes for small-buffer-optimization. |
b3b113eac3b8
add overridable macros to the install docs
Mike Becker <universe@uap-core.de>
parents:
721
diff
changeset
|
22 | You can do this, be pre-defining one or more of the following macros: |
b3b113eac3b8
add overridable macros to the install docs
Mike Becker <universe@uap-core.de>
parents:
721
diff
changeset
|
23 | |
b3b113eac3b8
add overridable macros to the install docs
Mike Becker <universe@uap-core.de>
parents:
721
diff
changeset
|
24 | --------------------------------- --------------------------------------------------------------------- ---------- |
b3b113eac3b8
add overridable macros to the install docs
Mike Becker <universe@uap-core.de>
parents:
721
diff
changeset
|
25 | Macro Description Default |
b3b113eac3b8
add overridable macros to the install docs
Mike Becker <universe@uap-core.de>
parents:
721
diff
changeset
|
26 | --------------------------------- --------------------------------------------------------------------- ---------- |
b3b113eac3b8
add overridable macros to the install docs
Mike Becker <universe@uap-core.de>
parents:
721
diff
changeset
|
27 | CX_ARRAY_SWAP_SBO_SIZE The maximum item size in an array list that uses SBO. 128 |
b3b113eac3b8
add overridable macros to the install docs
Mike Becker <universe@uap-core.de>
parents:
721
diff
changeset
|
28 | |
807
c8d692131b1e
remove flags to disable SBO in tests - fix #343 fix #358
Mike Becker <universe@uap-core.de>
parents:
806
diff
changeset
|
29 | CX_LINKED_LIST_SWAP_SBO_SIZE The maximum item size that uses SBO swap instead of relinking. 128 |
737
b3b113eac3b8
add overridable macros to the install docs
Mike Becker <universe@uap-core.de>
parents:
721
diff
changeset
|
30 | |
807
c8d692131b1e
remove flags to disable SBO in tests - fix #343 fix #358
Mike Becker <universe@uap-core.de>
parents:
806
diff
changeset
|
31 | CX_LINKED_LIST_SORT_SBO_SIZE The maximum list size that uses SBO during sort. 1024 |
737
b3b113eac3b8
add overridable macros to the install docs
Mike Becker <universe@uap-core.de>
parents:
721
diff
changeset
|
32 | |
b3b113eac3b8
add overridable macros to the install docs
Mike Becker <universe@uap-core.de>
parents:
721
diff
changeset
|
33 | CX_PRINTF_SBO_SIZE The maximum string length printf.h uses stack memory for. 512 |
b3b113eac3b8
add overridable macros to the install docs
Mike Becker <universe@uap-core.de>
parents:
721
diff
changeset
|
34 | |
806
e06249e09f99
add constant for reading out strstr sbo size - relates to #343
Mike Becker <universe@uap-core.de>
parents:
760
diff
changeset
|
35 | CX_STRSTR_SBO_SIZE The maximum length of the "needle" in cx_strstr that can use SBO. 512 |
737
b3b113eac3b8
add overridable macros to the install docs
Mike Becker <universe@uap-core.de>
parents:
721
diff
changeset
|
36 | --------------------------------- --------------------------------------------------------------------- ---------- |
b3b113eac3b8
add overridable macros to the install docs
Mike Becker <universe@uap-core.de>
parents:
721
diff
changeset
|
37 | |
b3b113eac3b8
add overridable macros to the install docs
Mike Becker <universe@uap-core.de>
parents:
721
diff
changeset
|
38 | You can also tweak some other buffer sizes with the same technique: |
b3b113eac3b8
add overridable macros to the install docs
Mike Becker <universe@uap-core.de>
parents:
721
diff
changeset
|
39 | |
b3b113eac3b8
add overridable macros to the install docs
Mike Becker <universe@uap-core.de>
parents:
721
diff
changeset
|
40 | --------------------------------- --------------------------------------------------- ---------- |
b3b113eac3b8
add overridable macros to the install docs
Mike Becker <universe@uap-core.de>
parents:
721
diff
changeset
|
41 | Macro Description Default |
b3b113eac3b8
add overridable macros to the install docs
Mike Becker <universe@uap-core.de>
parents:
721
diff
changeset
|
42 | --------------------------------- --------------------------------------------------- ---------- |
b3b113eac3b8
add overridable macros to the install docs
Mike Becker <universe@uap-core.de>
parents:
721
diff
changeset
|
43 | CX_STRREPLACE_INDEX_BUFFER_SIZE The number of matches one index buffer can store. 64 |
b3b113eac3b8
add overridable macros to the install docs
Mike Becker <universe@uap-core.de>
parents:
721
diff
changeset
|
44 | |
b3b113eac3b8
add overridable macros to the install docs
Mike Becker <universe@uap-core.de>
parents:
721
diff
changeset
|
45 | CX_STREAM_COPY_BUF_SIZE The buffer size on the stack for a stream copy. 1024 |
b3b113eac3b8
add overridable macros to the install docs
Mike Becker <universe@uap-core.de>
parents:
721
diff
changeset
|
46 | |
b3b113eac3b8
add overridable macros to the install docs
Mike Becker <universe@uap-core.de>
parents:
721
diff
changeset
|
47 | CX_STREAM_BCOPY_BUF_SIZE The buffer size on the heap for a stream copy. 8192 |
b3b113eac3b8
add overridable macros to the install docs
Mike Becker <universe@uap-core.de>
parents:
721
diff
changeset
|
48 | --------------------------------- --------------------------------------------------- ---------- |
b3b113eac3b8
add overridable macros to the install docs
Mike Becker <universe@uap-core.de>
parents:
721
diff
changeset
|
49 | |
390
d345541018fa
starts ucx 3.0 development
Mike Becker <universe@uap-core.de>
parents:
264
diff
changeset
|
50 | --- |
d345541018fa
starts ucx 3.0 development
Mike Becker <universe@uap-core.de>
parents:
264
diff
changeset
|
51 | |
d345541018fa
starts ucx 3.0 development
Mike Becker <universe@uap-core.de>
parents:
264
diff
changeset
|
52 | ### UCX 2.1 |
d345541018fa
starts ucx 3.0 development
Mike Becker <universe@uap-core.de>
parents:
264
diff
changeset
|
53 | |
d345541018fa
starts ucx 3.0 development
Mike Becker <universe@uap-core.de>
parents:
264
diff
changeset
|
54 | The build procedure for UCX 2.1 uses a configure script. |
d345541018fa
starts ucx 3.0 development
Mike Becker <universe@uap-core.de>
parents:
264
diff
changeset
|
55 | For Microsoft Windows, you will need an appropriate port of the linux |
d345541018fa
starts ucx 3.0 development
Mike Becker <universe@uap-core.de>
parents:
264
diff
changeset
|
56 | tools (like MinGW or Cygwin). |
d345541018fa
starts ucx 3.0 development
Mike Becker <universe@uap-core.de>
parents:
264
diff
changeset
|
57 | First, download the source code from [Source Forge][1]. |
d345541018fa
starts ucx 3.0 development
Mike Becker <universe@uap-core.de>
parents:
264
diff
changeset
|
58 | |
d345541018fa
starts ucx 3.0 development
Mike Becker <universe@uap-core.de>
parents:
264
diff
changeset
|
59 | wget https://sourceforge.net/projects/ucx/files/ucx-2.1.0.tar.gz |
d345541018fa
starts ucx 3.0 development
Mike Becker <universe@uap-core.de>
parents:
264
diff
changeset
|
60 | tar -xzf ucx-2.1.0.tar.gz |
d345541018fa
starts ucx 3.0 development
Mike Becker <universe@uap-core.de>
parents:
264
diff
changeset
|
61 | cd ucx-2.1.0 |
259 | 62 | |
63 | Then issue the `configure` and `make` commands. | |
64 | ||
65 | ./configure && make | |
66 | ||
67 | To verify your installment you can issue `make check`. If everything is fine, | |
68 | you can install UCX with | |
69 | ||
70 | make install | |
71 | ||
72 | Note, that you might need administrative privileges for a system wide | |
73 | installation. | |
74 | ||
75 | [1]: https://sourceforge.net/projects/ucx/files/ | |
76 |