Skip to content

Commit 357d066

Browse files
authored
Merge pull request #1 from basilegithub/cleaning_code
Merged.
2 parents 9238a17 + 635f740 commit 357d066

33 files changed

+1835
-1684
lines changed

.gitignore

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
lib/
2+
logs/
3+
build/
4+
config/

.vscode/settings.json

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
{
2+
"files.associations": {
3+
"numbers": "c",
4+
"omp.h": "c",
5+
"polynomial_functions.h": "c",
6+
"limits": "c",
7+
"stdbool.h": "c",
8+
"structures.h": "c",
9+
"random": "c"
10+
}
11+
}

README.txt

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -85,6 +85,4 @@ Here are the next steps:
8585

8686
- I still have to implement one last feature : adding block Lanczos algorithm for the linear algebra.
8787

88-
- I have to continue cleaning up the code.
89-
9088
- Finally, implement the GNFS algorithm in C.

config/config.txt

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,3 @@
1-
nb_cpu_sieve=28
2-
flag_batch_smooth=1
3-
flag_gaussian_elimination=1
1+
nb_cpu_sieve=2
2+
flag_batch_smooth=0
3+
flag_gaussian_elimination=0

include/build_matrix.h

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33

44
#include "structures.h"
55

6-
void build_sparse_matrix(dyn_array_classic* A, dyn_array relations, dyn_array_classic primes, unsigned long *nonzero, double *density, unsigned long *nb_lines, dyn_array_classic* rel_weight);
7-
void build_dense_matrix(dyn_array relations, dyn_array_classic primes, unsigned long relations_len, unsigned long base_size, mpz_t *dense_matrix);
6+
void build_sparse_matrix(dyn_array relations, dyn_array_classic* matrix, dyn_array_classic* rel_weight, dyn_array_classic factor_base, unsigned long *nonzero_count, unsigned long *row_count, double *density);
7+
void build_dense_matrix(dyn_array relations, dyn_array_classic factor_base, mpz_t *dense_matrix, unsigned long relations_len, unsigned long base_size);
88

99
#endif // BUILD_MATRIX_H

include/compute_sqrt.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,6 @@
66

77
#include "structures.h"
88

9-
void build_sqrt(mpz_t n,unsigned long dim, bool vector[dim], dyn_array_classic primes, mpz_t x, mpz_t y, dyn_array relations, dyn_array smooth);
9+
void build_sqrt(dyn_array relations, dyn_array smooth, dyn_array_classic factor_base, mpz_t n, mpz_t x, mpz_t y, unsigned long dim, bool vector[dim]);
1010

1111
#endif // COMPUTE_SQRT_H

include/gaussian_elimination.h

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55

66
#include "structures.h"
77

8-
void gaussian_elimination(unsigned long relations_len, unsigned long base_size, mpz_t *dense_matrix, mpz_t *res);
9-
bool row_is_zero(unsigned long relations_len, unsigned long base_size, mpz_t *dense_matrix, size_t row_index);
8+
void gaussian_elimination(mpz_t *dense_matrix, mpz_t *res, unsigned long relations_len, unsigned long base_size);
9+
bool row_is_zero(mpz_t *dense_matrix, size_t row_index, unsigned long relations_len, unsigned long base_size);
1010

1111
#endif // GAUSSIAN_ELIMINATION_H

include/generate_primes.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,6 @@
55

66
#include "structures.h"
77

8-
void smoothB(mpz_t B, dyn_array_classic* primes);
8+
void erasthotenes_sieve(dyn_array_classic* primes, mpz_t bound);
99

1010
#endif // GENERATE_PRIMES_H

include/mono_cpu_sieving.h

Lines changed: 7 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -9,22 +9,22 @@
99
void mono_cpu_sieve(
1010
dyn_array* relations,
1111
dyn_array* smooth_numbers,
12-
dyn_array_classic primes,
1312
dyn_array a,
13+
dyn_array_classic primes,
1414
mpz_t n,
1515
mpz_t prod_primes,
1616
mpz_t cst,
1717
mpz_t cst2,
1818
mpz_t tmp_bin,
19-
mpf_t nb_large,
2019
mpf_t target,
2120
mpf_t ln2,
2221
mpf_t ln10,
2322
mpf_t e,
24-
mpf_t var1,
25-
mpf_t var2,
26-
mpf_t var3,
27-
mpf_t tmpf2,
23+
unsigned long* full_found,
24+
unsigned long* partial_found,
25+
unsigned long* indexp,
26+
unsigned long* bounds,
27+
unsigned long* logs,
2828
unsigned long best_mult,
2929
unsigned long time_seed,
3030
unsigned long sieve_len,
@@ -42,13 +42,9 @@ void mono_cpu_sieve(
4242
unsigned long time_diff,
4343
unsigned long objective,
4444
unsigned long seconds,
45-
unsigned long* full_found,
46-
unsigned long* partial_found,
47-
unsigned long* indexp,
48-
unsigned long* bounds,
49-
unsigned long* logs,
5045
int* need_append,
5146
int flag_batch_smooth,
47+
double nb_large,
5248
time_t second1,
5349
time_t second2
5450
);

include/parallel_sieving.h

Lines changed: 7 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -10,22 +10,22 @@ void parallel_sieve(
1010
FILE *logfile,
1111
dyn_array* relations,
1212
dyn_array* smooth_numbers,
13-
dyn_array_classic primes,
1413
dyn_array a,
14+
dyn_array_classic primes,
1515
mpz_t n,
1616
mpz_t prod_primes,
1717
mpz_t cst,
1818
mpz_t cst2,
1919
mpz_t tmp_bin,
20-
mpf_t nb_large,
2120
mpf_t target,
2221
mpf_t ln2,
2322
mpf_t ln10,
2423
mpf_t e,
25-
mpf_t var1,
26-
mpf_t var2,
27-
mpf_t var3,
28-
mpf_t tmpf2,
24+
unsigned long* full_found,
25+
unsigned long* partial_found,
26+
unsigned long* indexp,
27+
unsigned long* bounds,
28+
unsigned long* logs,
2929
unsigned long best_mult,
3030
unsigned long time_seed,
3131
unsigned long sieve_len,
@@ -43,14 +43,10 @@ void parallel_sieve(
4343
unsigned long time_diff,
4444
unsigned long objective,
4545
unsigned long seconds,
46-
unsigned long* full_found,
47-
unsigned long* partial_found,
48-
unsigned long* indexp,
49-
unsigned long* bounds,
50-
unsigned long* logs,
5146
int* need_append,
5247
int nb_cpu_sieve,
5348
int flag_batch_smooth,
49+
double nb_large,
5450
time_t second1,
5551
time_t second2
5652
);

0 commit comments

Comments
 (0)