-
Notifications
You must be signed in to change notification settings - Fork 0
drivere/get-decics-numberfields
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
This is the general build process: 1. First build pari: The objective here is to get the library: libpari.a Here is what works on linux: a. Can download from here: https://pari.math.u-bordeaux.fr/download.html b. Untar and cd into pari directory c. ./Configure d. make all e. make install-lib-sta (This basically copies the static library to /usr/local/lib/) 2. Next, build the boinc libraries: The objective of this step is to get the following 2 libraries: libboinc.a, and libboinc_api.a Here is what works on linux: a. Clone the boinc git repo: https://github.com/BOINC/boinc b. cd boinc/ c. ./_autosetup d. ./configure --disable-client --disable-server e. make f. make install (This copies the libraries to /usr/local/lib) 3. Next, build the GetDecics app. There is a makefile for the various gpu types. For example, to build the Nvidia openCL version, you would do: make -f Makefile.openCL_Nvidia The makefiles will need to be modified so that the compiler can find the source files (both pari and boinc) and the libraries. There is also a dependency on the gmp library, so that will need to be installed. And obviously, openCL headers and libOpenCL will need to be present (and makefile changed accordingly). 4. To test the executable: a. cp executable into the Test directory. b. Make sure you have a valid init_data.xml file. There are some samples in the Test directory. If testing the lookup table, you will need an init_data.xml file for your specific system. I get it by copying one from any BOINC slot directory (any project will do since all you need are the xml tags related to the GPU). If the system you are testing on is not attached to any project, then you can copy an init_data.xml file from any system with the same GPU. c. Remove the following files from previous runs if they exist: stderr.txt, out, GetDecics_state, boinc_finish_called. Note: The GetDecics_state file is the checkpoint file. Results will be incomplete if this file is present when starting a run. d. Setup a link named "in" for the dat file you want to test (e.g. ln -fs sf5_DS-14x11_Grp10973of705883.dat in) e. If using the lookup table gpuLookupTable.txt, either change the row for your GPU or add a new row if your GPU is not listed. The name in the lookup table must be a substring of the BOINC generated GPU string. Spaces are ignored when comparing strings. When in doubt, do an initial run and look near the top of stderr.txt for the BOINC GPU string. For example, BOINC reported my GPU as "[CUDA|GeForceGTX1050|1|1992MB|45066|102]", so I used the name "GTX 1050" in the lookup table. f. Finally run the executable: ./GetDecics There are 2 optional command line arguments that can override sizing parameters: ./GetDecics --numBlocks XX --threadsPerBlock YY When using the lookup table, you can ignore these command line arguments. g. Also see the README in the Test directory. A successful run will produce some output files. If there are problems, stderr.txt may have some clues. The important file is called "out". There are truth files in the test directory for comparison (old cpu versions, so they have long run times).
About
Source code for the BOINC NumberFields project.
Resources
Stars
Watchers
Forks
Releases
No releases published
Packages 0
No packages published