mersenneforum.org  

Go Back   mersenneforum.org > Factoring Projects > GMP-ECM

Reply
 
Thread Tools
Old 2022-01-16, 03:27   #1
ATH
Einyen
 
ATH's Avatar
 
Dec 2003
Denmark

22×7×112 Posts
Default GMP-ECM 7.0.5-dev Revision3092 - maxmem not working

It is using more RAM than maxmem-setting, I'm not sure if the number is too big at 1271 digits?

I also tried different -k settings and it also used more than it initially informed.

With: -maxmem 16000:
Using lmax = 8388608 with NTT which takes about 13440MB of memory
Peak memory usage: 23520MB

Using lmax = 4194304 with NTT which takes about 6720MB of memory
Peak memory usage: 23123MB

Using lmax = 2097152 with NTT which takes about 3360MB of memory
Peak memory usage: 16358MB

Full logs:
Code:
GMP-ECM 7.0.5-dev [configured with GMP 6.2.1, --enable-asm-redc] [P-1]
Resuming P-1 residue saved by ATH@5960X with GMP-ECM 7.0.5-dev on Wed Jan 12 08:06:16 2022 
Input number is (2^4933-1)/29599/3637821119/25117652081/35368771391/169745595529/90043391515951/740782867588969631/359805386252506578683471/47332662224988461128710060020435516120344835557993/1552544580255765059978618542093161661106227966313804593681333703 (1271 digits)
Using special division for factor of 2^4933-1
Using lmax = 8388608 with NTT which takes about 13440MB of memory
Using B1=200000000000-200000000000, B2=3894999971915220-4100701352195280, polynomial x^1
P = 24249225, l = 8388608, s_1 = 4147200, k = s_2 = 2, m_1 = 80311841
Can't compute success probabilities for B1 <> B2min
Step 1 took 0ms
Computing F from factored S_1 took 275641ms
Computing h took 45234ms
Computing DCT-I of h took 50203ms
Multi-point evaluation 1 of 2:
Computing g_i took 161703ms
Computing g*h took 107203ms
Computing gcd of coefficients and N took 55672ms
Multi-point evaluation 2 of 2:
Computing g_i took 161344ms
Computing g*h took 106938ms
Computing gcd of coefficients and N took 56171ms
Step 2 took 1021546ms
Peak memory usage: 24758MB

GMP-ECM 7.0.5-dev [configured with GMP 6.2.1, --enable-asm-redc] [P-1]
Resuming P-1 residue saved by ATH@5960X with GMP-ECM 7.0.5-dev on Wed Jan 12 08:06:16 2022 
Input number is (2^4933-1)/29599/3637821119/25117652081/35368771391/169745595529/90043391515951/740782867588969631/359805386252506578683471/47332662224988461128710060020435516120344835557993/1552544580255765059978618542093161661106227966313804593681333703 (1271 digits)
Using special division for factor of 2^4933-1
Using lmax = 8388608 with NTT which takes about 13440MB of memory
Using B1=200000000000-200000000000, B2=4099999961659770-4305701341939830, polynomial x^1
P = 24249225, l = 8388608, s_1 = 4147200, k = s_2 = 2, m_1 = 84538780
Can't compute success probabilities for B1 <> B2min
Step 1 took 0ms
Computing F from factored S_1 took 276187ms
Computing h took 45328ms
Computing DCT-I of h took 50344ms
Multi-point evaluation 1 of 2:
Computing g_i took 160562ms
Computing g*h took 107110ms
Computing gcd of coefficients and N took 55890ms
Multi-point evaluation 2 of 2:
Computing g_i took 160000ms
Computing g*h took 106813ms
Computing gcd of coefficients and N took 55812ms
Step 2 took 1019515ms
Peak memory usage: 23607MB

GMP-ECM 7.0.5-dev [configured with GMP 6.2.1, --enable-asm-redc] [P-1]
Resuming P-1 residue saved by ATH@5960X with GMP-ECM 7.0.5-dev on Wed Jan 12 08:06:16 2022 
Input number is (2^4933-1)/29599/3637821119/25117652081/35368771391/169745595529/90043391515951/740782867588969631/359805386252506578683471/47332662224988461128710060020435516120344835557993/1552544580255765059978618542093161661106227966313804593681333703 (1271 digits)
Using special division for factor of 2^4933-1
Using lmax = 8388608 with NTT which takes about 13440MB of memory
Using B1=200000000000-200000000000, B2=4304999999902770-4510701380182830, polynomial x^1
P = 24249225, l = 8388608, s_1 = 4147200, k = s_2 = 2, m_1 = 88765720
Can't compute success probabilities for B1 <> B2min
Step 1 took 0ms
Computing F from factored S_1 took 276140ms
Computing h took 45735ms
Computing DCT-I of h took 50093ms
Multi-point evaluation 1 of 2:
Computing g_i took 160938ms
Computing g*h took 106719ms
Computing gcd of coefficients and N took 55796ms
Multi-point evaluation 2 of 2:
Computing g_i took 159438ms
Computing g*h took 106703ms
Computing gcd of coefficients and N took 55703ms
Step 2 took 1018765ms
Peak memory usage: 23520MB

GMP-ECM 7.0.5-dev [configured with GMP 6.2.1, --enable-asm-redc] [P-1]
Resuming P-1 residue saved by ATH@5960X with GMP-ECM 7.0.5-dev on Wed Jan 12 08:06:16 2022 
Input number is (2^4933-1)/29599/3637821119/25117652081/35368771391/169745595529/90043391515951/740782867588969631/359805386252506578683471/47332662224988461128710060020435516120344835557993/1552544580255765059978618542093161661106227966313804593681333703 (1271 digits)
Using special division for factor of 2^4933-1
Using lmax = 4194304 with NTT which takes about 6720MB of memory
Using B1=200000000000-200000000000, B2=4304999980042800-4381325102091900, polynomial x^1
P = 17612595, l = 4194304, s_1 = 2027520, k = s_2 = 3, m_1 = 122213673
Can't compute success probabilities for B1 <> B2min
Step 1 took 0ms
Computing F from factored S_1 took 132594ms
Computing h took 21907ms
Computing DCT-I of h took 23515ms
Multi-point evaluation 1 of 3:
Computing g_i took 79204ms
Computing g*h took 49562ms
Computing gcd of coefficients and N took 28438ms
Multi-point evaluation 2 of 3:
Computing g_i took 79468ms
Computing g*h took 49657ms
Computing gcd of coefficients and N took 28468ms
Multi-point evaluation 3 of 3:
Computing g_i took 79563ms
Computing g*h took 49656ms
Computing gcd of coefficients and N took 28359ms
Step 2 took 651047ms
Peak memory usage: 23123MB

GMP-ECM 7.0.5-dev [configured with GMP 6.2.1, --enable-asm-redc] [P-1]
Resuming P-1 residue saved by ATH@5960X with GMP-ECM 7.0.5-dev on Wed Jan 12 08:06:16 2022 
Input number is (2^4933-1)/29599/3637821119/25117652081/35368771391/169745595529/90043391515951/740782867588969631/359805386252506578683471/47332662224988461128710060020435516120344835557993/1552544580255765059978618542093161661106227966313804593681333703 (1271 digits)
Using special division for factor of 2^4933-1
Using lmax = 4194304 with NTT which takes about 6720MB of memory
Using B1=200000000000-200000000000, B2=4509999989647320-4612850513018580, polynomial x^1
P = 24249225, l = 4194304, s_1 = 2073600, k = s_2 = 4, m_1 = 92992659
Can't compute success probabilities for B1 <> B2min
Step 1 took 0ms
Computing F from factored S_1 took 134625ms
Computing h took 22437ms
Computing DCT-I of h took 23687ms
Multi-point evaluation 1 of 4:
Computing g_i took 78188ms
Computing g*h took 49703ms
Computing gcd of coefficients and N took 27656ms
Multi-point evaluation 2 of 4:
Computing g_i took 79141ms
Computing g*h took 49609ms
Computing gcd of coefficients and N took 27656ms
Multi-point evaluation 3 of 4:
Computing g_i took 78641ms
Computing g*h took 49750ms
Computing gcd of coefficients and N took 27781ms
Multi-point evaluation 4 of 4:
Computing g_i took 78453ms
Computing g*h took 49766ms
Computing gcd of coefficients and N took 27656ms
Step 2 took 805469ms
Peak memory usage: 24136MB

GMP-ECM 7.0.5-dev [configured with GMP 6.2.1, --enable-asm-redc] [P-1]
Resuming P-1 residue saved by ATH@5960X with GMP-ECM 7.0.5-dev on Wed Jan 12 08:06:16 2022 
Input number is (2^4933-1)/29599/3637821119/25117652081/35368771391/169745595529/90043391515951/740782867588969631/359805386252506578683471/47332662224988461128710060020435516120344835557993/1552544580255765059978618542093161661106227966313804593681333703 (1271 digits)
Using special division for factor of 2^4933-1
Using lmax = 4194304 with NTT which takes about 6720MB of memory
Using B1=200000000000-200000000000, B2=4611999985072538-4661610230557222, polynomial x^1
P = 11696685, l = 4194304, s_1 = 2073600, k = s_2 = 2, m_1 = 197149872
Can't compute success probabilities for B1 <> B2min
Step 1 took 0ms
Computing F from factored S_1 took 134688ms
Computing h took 22500ms
Computing DCT-I of h took 23735ms
Multi-point evaluation 1 of 2:
Computing g_i took 78687ms
Computing g*h took 49735ms
Computing gcd of coefficients and N took 27671ms
Multi-point evaluation 2 of 2:
Computing g_i took 78547ms
Computing g*h took 49672ms
Computing gcd of coefficients and N took 27594ms
Step 2 took 493594ms
Peak memory usage: 23908MB

GMP-ECM 7.0.5-dev [configured with GMP 6.2.1, --enable-asm-redc] [P-1]
Resuming P-1 residue saved by ATH@5960X with GMP-ECM 7.0.5-dev on Wed Jan 12 08:06:16 2022 
Input number is (2^4933-1)/29599/3637821119/25117652081/35368771391/169745595529/90043391515951/740782867588969631/359805386252506578683471/47332662224988461128710060020435516120344835557993/1552544580255765059978618542093161661106227966313804593681333703 (1271 digits)
Using special division for factor of 2^4933-1
Using lmax = 4194304 with NTT which takes about 6720MB of memory
Using B1=200000000000-200000000000, B2=4651999999364064-4677441709323036, polynomial x^1
P = 5870865, l = 4194304, s_1 = 2027520, k = s_2 = 1, m_1 = 396193743
Can't compute success probabilities for B1 <> B2min
Step 1 took 0ms
Computing F from factored S_1 took 132485ms
Computing h took 22063ms
Computing DCT-I of h took 23750ms
Multi-point evaluation 1 of 1:
Computing g_i took 79125ms
Computing g*h took 49735ms
Computing gcd of coefficients and N took 28296ms
Step 2 took 336171ms
Peak memory usage: 23086MB

GMP-ECM 7.0.5-dev [configured with GMP 6.2.1, --enable-asm-redc] [P-1]
Resuming P-1 residue saved by ATH@5960X with GMP-ECM 7.0.5-dev on Wed Jan 12 08:06:16 2022 
Input number is (2^4933-1)/29599/3637821119/25117652081/35368771391/169745595529/90043391515951/740782867588969631/359805386252506578683471/47332662224988461128710060020435516120344835557993/1552544580255765059978618542093161661106227966313804593681333703 (1271 digits)
Using special division for factor of 2^4933-1
Using lmax = 2097152 with NTT which takes about 3360MB of memory
Using B1=200000000000-200000000000, B2=4676999997727404-4689720811338216, polynomial x^1
P = 5870865, l = 2097152, s_1 = 1013760, k = s_2 = 2, m_1 = 398322901
Can't compute success probabilities for B1 <> B2min
Step 1 took 0ms
Computing F from factored S_1 took 64734ms
Computing h took 10922ms
Computing DCT-I of h took 10937ms
Multi-point evaluation 1 of 2:
Computing g_i took 39313ms
Computing g*h took 23125ms
Computing gcd of coefficients and N took 14187ms
Multi-point evaluation 2 of 2:
Computing g_i took 38907ms
Computing g*h took 23140ms
Computing gcd of coefficients and N took 14219ms
Step 2 took 239922ms
Peak memory usage: 16358MB

Last fiddled with by ATH on 2022-01-16 at 03:28
ATH is offline   Reply With Quote
Old 2022-01-16, 13:38   #2
WraithX
 
WraithX's Avatar
 
Mar 2006

2×32×29 Posts
Default

Quote:
Originally Posted by ATH View Post
It is using more RAM than maxmem-setting, I'm not sure if the number is too big at 1271 digits?

I also tried different -k settings and it also used more than it initially informed.

With: -maxmem 16000:
Using lmax = 8388608 with NTT which takes about 13440MB of memory
Peak memory usage: 23520MB

Using lmax = 4194304 with NTT which takes about 6720MB of memory
Peak memory usage: 23123MB

Using lmax = 2097152 with NTT which takes about 3360MB of memory
Peak memory usage: 16358MB
From the logs, I see you are using P-1. Could you give the command line you used for each of the logs you provided?
WraithX is offline   Reply With Quote
Old 2022-01-16, 16:44   #3
ATH
Einyen
 
ATH's Avatar
 
Dec 2003
Denmark

338810 Posts
Default

Something like this:
ecm.exe -v -pm1 -maxmem 16000 -resume M4933pm200.txt 200e9 3895e12-4100e12 < M4933.txt
ecm.exe -v -pm1 -maxmem 16000 -resume M4933pm200.txt 200e9 4100e12-4305e12 < M4933.txt
ecm.exe -v -pm1 -maxmem 16000 -resume M4933pm200.txt 200e9 4305e12-4510e12 < M4933.txt
ecm.exe -v -pm1 -maxmem 16000 -resume M4933pm200.txt 200e9 4305e12-4380e12 < M4933.txt
ecm.exe -v -pm1 -maxmem 16000 -resume M4933pm200.txt 200e9 4510e12-4610e12 < M4933.txt
ecm.exe -v -pm1 -maxmem 16000 -resume M4933pm200.txt 200e9 4610e12-4660e12 < M4933.txt
ecm.exe -v -pm1 -maxmem 16000 -resume M4933pm200.txt 200e9 4652e12-4675e12 < M4933.txt
ecm.exe -v -pm1 -maxmem 16000 -resume M4933pm200.txt 200e9 4677e12-4687e12 < M4933.txt

I think I tried -k for some values instead of -maxmem but it did not make much difference. I was experimenting with RAM usage vs speed. I have 32 GB RAM and using a 4GB RAM drive so only 28 GB, so I was lucky it did not crash when it used 24-25 GB.



If you can fix this issue so the initial estimate can be somewhat trusted: "which takes about 13440MB of memory", could the "-k" switch be changed (or another switch added) to choose exactly the value you specify, instead of:
"-k n perform >= n steps in stage 2"

I would like to be able to experiment more trying -k 1, -k 2 etc. and see how much RAM this would take and then changing the B2 range accordingly. I guess you can grab the total physical RAM from the system in a variable, so you could make it abort if the estimated RAM usage was above for example (Physical RAM - 3GB) or something like that? Or maybe just write a big warning message with the RAM usage.
Attached Files
File Type: txt M4933pm200.txt (1.4 KB, 59 views)

Last fiddled with by ATH on 2022-01-16 at 16:51
ATH is offline   Reply With Quote
Old 2022-01-16, 21:13   #4
WraithX
 
WraithX's Avatar
 
Mar 2006

2·32·29 Posts
Default

Quote:
Originally Posted by ATH View Post
Something like this:
ecm.exe -v -pm1 -maxmem 16000 -resume M4933pm200.txt 200e9 3895e12-4100e12 < M4933.txt
ecm.exe -v -pm1 -maxmem 16000 -resume M4933pm200.txt 200e9 4677e12-4687e12 < M4933.txt
Unfortunately, I was unable to reproduce this issue. Are you on Windows? Where did you get your executable? I am on Windows and just tested an old binary I had from svn 3022 with GMP 6.1.1, and one I just compiled from the latest github repo with GMP 6.2.1. Both the old version and the new version used about as much ram as they said they would. If you are compiling your own copy, your best bet is to download the latest source from PaulZ's Inria gitlab: https://gitlab.inria.fr/zimmerma/ecm
Code:
$ ecm_svn3022.exe -v -pm1 -maxmem 16000 -resume M4933pm200.txt 200e9 3895e12-4100e12 < M4933.txt
GMP-ECM 7.0.5-dev [configured with GMP 6.1.1, --enable-asm-redc] [P-1]
Tuned for x86_64/k8/params.h
Resuming P-1 residue saved by ATH@5960X with GMP-ECM 7.0.5-dev on Wed Jan 12 08:06:16 2022
Input number is (2^4933-1)/29599/3637821119/25117652081/35368771391/169745595529/90043391515951/740782867588969631/359805386252506578683471/47332662224988461128710060020435516120344835557993/1552544580255765059978618542093161661106227966313804593681333703 (1271 digits)
Using special division for factor of 2^4933-1
Using lmax = 8388608 with NTT which takes about 13440MB of memory
Using B1=200000000000-200000000000, B2=3894999971915220-4100701352195280, polynomial x^1
P = 24249225, l = 8388608, s_1 = 4147200, k = s_2 = 2, m_1 = 80311841
Can't compute success probabilities for B1 <> B2min
Step 1 took 0ms
Computing F from factored S_1 took 279429ms
Computing h took 43150ms
Computing DCT-I of h took 55833ms
Multi-point evaluation 1 of 2:
Computing g_i took 150011ms
Computing g*h took 109356ms
Computing gcd of coefficients and N took 56894ms
Multi-point evaluation 2 of 2:
Computing g_i took 149418ms
Computing g*h took 109138ms
Computing gcd of coefficients and N took 56566ms
Step 2 took 1010496ms
Peak memory usage: 13537MB


$ ecm_gh202201.exe -v -pm1 -maxmem 16000 -resume M4933pm200.txt 200e9 3895e12-4100e12 < M4933.txt
GMP-ECM 7.0.5-dev [configured with GMP 6.2.1, --enable-assert] [P-1]
Tuned for x86_64/k8/params.h
Resuming P-1 residue saved by ATH@5960X with GMP-ECM 7.0.5-dev on Wed Jan 12 08:06:16 2022
Input number is (2^4933-1)/29599/3637821119/25117652081/35368771391/169745595529/90043391515951/740782867588969631/359805386252506578683471/47332662224988461128710060020435516120344835557993/1552544580255765059978618542093161661106227966313804593681333703 (1271 digits)
Using special division for factor of 2^4933-1
Using lmax = 8388608 with NTT which takes about 13440MB of memory
Using B1=200000000000-200000000000, B2=3894999971915220-4100701352195280, polynomial x^1
P = 24249225, l = 8388608, s_1 = 4147200, k = s_2 = 2, m_1 = 80311841
Can't compute success probabilities for B1 <> B2min
Step 1 took 0ms
Computing F from factored S_1 took 284686ms
Computing h took 43836ms
Computing DCT-I of h took 62354ms
Multi-point evaluation 1 of 2:
Computing g_i took 153707ms
Computing g*h took 116580ms
Computing gcd of coefficients and N took 55255ms
Multi-point evaluation 2 of 2:
Computing g_i took 154223ms
Computing g*h took 116502ms
Computing gcd of coefficients and N took 55474ms
Step 2 took 1043241ms
Peak memory usage: 13537MB


$ ecm_svn3022.exe  -v -pm1 -maxmem 16000 -resume M4933pm200.txt 200e9 4677e12-4687e12 < M4933.txt
GMP-ECM 7.0.5-dev [configured with GMP 6.1.1, --enable-asm-redc] [P-1]
Tuned for x86_64/k8/params.h
Resuming P-1 residue saved by ATH@5960X with GMP-ECM 7.0.5-dev on Wed Jan 12 08:06:16 2022
Input number is (2^4933-1)/29599/3637821119/25117652081/35368771391/169745595529/90043391515951/740782867588969631/359805386252506578683471/47332662224988461128710060020435516120344835557993/1552544580255765059978618542093161661106227966313804593681333703 (1271 digits)
Using special division for factor of 2^4933-1
Using lmax = 2097152 with NTT which takes about 3360MB of memory
Using B1=200000000000-200000000000, B2=4676999997727404-4689720811338216, polynomial x^1
P = 5870865, l = 2097152, s_1 = 1013760, k = s_2 = 2, m_1 = 398322901
Can't compute success probabilities for B1 <> B2min
Step 1 took 0ms
Computing F from factored S_1 took 65941ms
Computing h took 10577ms
Computing DCT-I of h took 12184ms
Multi-point evaluation 1 of 2:
Computing g_i took 37706ms
Computing g*h took 24102ms
Computing gcd of coefficients and N took 14648ms
Multi-point evaluation 2 of 2:
Computing g_i took 37721ms
Computing g*h took 24165ms
Computing gcd of coefficients and N took 14477ms
Step 2 took 241817ms
Peak memory usage: 3498MB


$ ecm_gh202201.exe -v -pm1 -maxmem 16000 -resume M4933pm200.txt 200e9 4677e12-4687e12 < M4933.txt
GMP-ECM 7.0.5-dev [configured with GMP 6.2.1, --enable-assert] [P-1]
Tuned for x86_64/k8/params.h
Resuming P-1 residue saved by ATH@5960X with GMP-ECM 7.0.5-dev on Wed Jan 12 08:06:16 2022
Input number is (2^4933-1)/29599/3637821119/25117652081/35368771391/169745595529/90043391515951/740782867588969631/359805386252506578683471/47332662224988461128710060020435516120344835557993/1552544580255765059978618542093161661106227966313804593681333703 (1271 digits)
Using special division for factor of 2^4933-1
Using lmax = 2097152 with NTT which takes about 3360MB of memory
Using B1=200000000000-200000000000, B2=4676999997727404-4689720811338216, polynomial x^1
P = 5870865, l = 2097152, s_1 = 1013760, k = s_2 = 2, m_1 = 398322901
Can't compute success probabilities for B1 <> B2min
Step 1 took 0ms
Computing F from factored S_1 took 66893ms
Computing h took 10764ms
Computing DCT-I of h took 13479ms
Multi-point evaluation 1 of 2:
Computing g_i took 38485ms
Computing g*h took 25631ms
Computing gcd of coefficients and N took 14181ms
Multi-point evaluation 2 of 2:
Computing g_i took 38859ms
Computing g*h took 25881ms
Computing gcd of coefficients and N took 14243ms
Step 2 took 248619ms
Peak memory usage: 3497MB
WraithX is offline   Reply With Quote
Old 2022-01-17, 01:24   #5
ATH
Einyen
 
ATH's Avatar
 
Dec 2003
Denmark

22·7·112 Posts
Default

Ok, I was using the old svn link, which still works: svn://scm.gforge.inria.fr/svn/ecm/trunk
I am compiling using MSYS2 and MiNGW64 like I have been doing for years now.

I tried now using: git clone https://gitlab.inria.fr/zimmerma/ecm.git

but after:
libtoolize
autoreconf -i
./configure ABI=64 CC=gcc CFLAGS="-O3 -m64 -march=haswell -mtune=haswell" CPPFLAGS="-I/usr/include" LDFLAGS="-Wl,--stack,16777216 -L/usr/lib" --build=x86_64-pc-mingw64 --enable-static --disable-shared

then "make" fails right away:

Code:
$ make
C:/msys64/mingw64/bin/make.exe  all-recursive
make[1]: Entering directory 'C:/msys64/home/ATH/ecm'
Making all in x86_64
make[2]: Entering directory 'C:/msys64/home/ATH/ecm/x86_64'
m4 -I../ -DOPERATION_mulredc1 `test -f mulredc1.asm || echo './'`mulredc1.asm >mulredc1.s
C:/msys64/usr/bin/sh.exe ../libtool    --mode=compile gcc  -O3 -m64 -mavx -mavx2 -mfma -march=haswell -mtune=haswell -c -o mulredc1.lo mulredc1.s
libtool: compile:  gcc -O3 -m64 -mavx -mavx2 -mfma -march=haswell -mtune=haswell -c mulredc1.s -o mulredc1.o
mulredc1.s: Assembler messages:
mulredc1.s:63: Error: junk at end of line, first unrecognized character is `-'
make[2]: *** [Makefile:414: mulredc1.lo] Error 1
rm mulredc1.s
make[2]: Leaving directory 'C:/msys64/home/ATH/ecm/x86_64'
make[1]: *** [Makefile:1963: all-recursive] Error 1
make[1]: Leaving directory 'C:/msys64/home/ATH/ecm'
make: *** [Makefile:837: all] Error 2
ATH is offline   Reply With Quote
Old 2022-01-17, 02:04   #6
ATH
Einyen
 
ATH's Avatar
 
Dec 2003
Denmark

D3C16 Posts
Default

I had an old build 3049 compiled with GMP 6.1.2 and it worked:
Peak memory usage: 13567MB
ATH is offline   Reply With Quote
Old 2022-01-17, 02:18   #7
WraithX
 
WraithX's Avatar
 
Mar 2006

2×32×29 Posts
Default

I ran into the same problem, and have just created a fix. Could you test out the update_asmredc_for_win64 branch?

You can either download a zip from https://gitlab.inria.fr/zimmerma/ecm...redc_for_win64 or you could git switch to the new branch update_asmredc_for_win64 and test it out.

One thing you'll need to do is create the mulredc files:
Code:

(in the new gmp-ecm directory)
cd to x86_64
./generate_all
python autogen.py 1 > mulredc1.asm
python autogen.py 2 > mulredc2.asm
generate_all will probably complain about not being able to find python, unless you have that in your msys2 or mingw64 bin directory (I didn't).

If you have python 3 instead of python 2 then those python commands may complain because the autogen.py script is old and uses the old [C]print "xyz"[/C] style instead of the newer [C]print("xyz")[/C] function style print.

After doing the above, then your autoreconf, configure, make, and make check should all work. I've never run libtoolize. I'm not sure what that does, but you may not need it.


*** UPDATE ***
I looked at this again and I've included the one missing file into the repo, so you should just be able to download that branch and build like normal. You don't have to worry about creating any mulredc files. The latest push with the missing file is 23f1aaf2.... I'll be interested to hear if this new branch works for you.

Last fiddled with by WraithX on 2022-01-17 at 03:18
WraithX is offline   Reply With Quote
Old 2022-01-17, 03:50   #8
ATH
Einyen
 
ATH's Avatar
 
Dec 2003
Denmark

22·7·112 Posts
Default

I had python3 so I had to install a new MSYS2 with python2, but I'm still the same error.

I attached the mulredc1.asm file.

Code:
$ make
C:/msys64/mingw64/bin/make.exe  all-recursive
make[1]: Entering directory 'C:/msys64/home/ATH/ecm-update_asmredc_for_win64'
Making all in x86_64
make[2]: Entering directory 'C:/msys64/home/ATH/ecm-update_asmredc_for_win64/x86_64'
m4 -I../ -DOPERATION_mulredc1 `test -f mulredc1.asm || echo './'`mulredc1.asm >mulredc1.s
C:/msys64/usr/bin/sh.exe ../libtool    --mode=compile gcc  -O3 -m64 -march=haswell -mtune=haswell -c -o mulredc1.lo mulredc1.s
libtool: compile:  gcc -O3 -m64 -march=haswell -mtune=haswell -c mulredc1.s -o mulredc1.o
mulredc1.s: Assembler messages:
mulredc1.s:63: Error: junk at end of line, first unrecognized character is `-'
make[2]: *** [Makefile:414: mulredc1.lo] Error 1
rm mulredc1.s
make[2]: Leaving directory 'C:/msys64/home/ATH/ecm-update_asmredc_for_win64/x86_64'
make[1]: *** [Makefile:1963: all-recursive] Error 1
make[1]: Leaving directory 'C:/msys64/home/ATH/ecm-update_asmredc_for_win64'
make: *** [Makefile:837: all] Error 2
Attached Files
File Type: zip mulredc1.zip (988 Bytes, 57 views)
ATH is offline   Reply With Quote
Old 2022-01-17, 04:01   #9
ATH
Einyen
 
ATH's Avatar
 
Dec 2003
Denmark

1101001111002 Posts
Default

Ok, I just noticed your update again, that I do not need to do anything else.

I downloaded the file "ecm-update_asmredc_for_win64.zip" again "23f1aaf2ad460543382bcb6bf19680eba0eb6036" but I'm still getting the error :(

I get a lot of warnings during "autoreconf -i":

Code:
$ autoreconf -i
libtoolize: putting auxiliary files in '.'.
libtoolize: copying file './ltmain.sh'
libtoolize: putting macros in AC_CONFIG_MACRO_DIRS, 'm4'.
libtoolize: copying file 'm4/libtool.m4'
libtoolize: copying file 'm4/ltoptions.m4'
libtoolize: copying file 'm4/ltsugar.m4'
libtoolize: copying file 'm4/ltversion.m4'
libtoolize: copying file 'm4/lt~obsolete.m4'
configure.ac:177: warning: The macro `AC_PROG_CC_C99' is obsolete.
configure.ac:177: You should run autoupdate.
../autoconf-2.71/lib/autoconf/c.m4:1659: AC_PROG_CC_C99 is expanded from...
configure.ac:177: the top level
configure.ac:206: warning: The macro `AC_HEADER_TIME' is obsolete.
configure.ac:206: You should run autoupdate.
../autoconf-2.71/lib/autoconf/headers.m4:743: AC_HEADER_TIME is expanded from...
configure.ac:206: the top level
configure.ac:288: warning: The macro `AC_FD_CC' is obsolete.
configure.ac:288: You should run autoupdate.
../autoconf-2.71/lib/autoconf/general.m4:399: AC_FD_CC is expanded from...
../autoconf-2.71/lib/m4sugar/m4sh.m4:692: _AS_IF_ELSE is expanded from...
../autoconf-2.71/lib/m4sugar/m4sh.m4:699: AS_IF is expanded from...
../autoconf-2.71/lib/autoconf/general.m4:2249: AC_CACHE_VAL is expanded from...
../autoconf-2.71/lib/autoconf/general.m4:2270: AC_CACHE_CHECK is expanded from...
acinclude.m4:76: GMP_PROG_M4 is expanded from...
configure.ac:288: the top level
configure.ac:289: warning: The macro `AC_FD_CC' is obsolete.
configure.ac:289: You should run autoupdate.
../autoconf-2.71/lib/autoconf/general.m4:399: AC_FD_CC is expanded from...
../autoconf-2.71/lib/m4sugar/m4sh.m4:692: _AS_IF_ELSE is expanded from...
../autoconf-2.71/lib/m4sugar/m4sh.m4:699: AS_IF is expanded from...
../autoconf-2.71/lib/autoconf/general.m4:2249: AC_CACHE_VAL is expanded from...
../autoconf-2.71/lib/autoconf/general.m4:2270: AC_CACHE_CHECK is expanded from...
acinclude.m4:286: GMP_ASM_UNDERSCORE is expanded from...
configure.ac:289: the top level
configure.ac:292: warning: The macro `AC_FD_CC' is obsolete.
configure.ac:292: You should run autoupdate.
../autoconf-2.71/lib/autoconf/general.m4:399: AC_FD_CC is expanded from...
acinclude.m4:157: GMP_TRY_ASSEMBLE is expanded from...
../autoconf-2.71/lib/m4sugar/m4sh.m4:692: _AS_IF_ELSE is expanded from...
../autoconf-2.71/lib/m4sugar/m4sh.m4:699: AS_IF is expanded from...
../autoconf-2.71/lib/autoconf/general.m4:2249: AC_CACHE_VAL is expanded from...
../autoconf-2.71/lib/autoconf/general.m4:2270: AC_CACHE_CHECK is expanded from...
acinclude.m4:194: GMP_ASM_TYPE is expanded from...
configure.ac:292: the top level
configure.ac:392: warning: The macro `AC_HEADER_STDC' is obsolete.
configure.ac:392: You should run autoupdate.
../autoconf-2.71/lib/autoconf/headers.m4:704: AC_HEADER_STDC is expanded from...
configure.ac:392: the top level
configure.ac:177: installing './compile'
configure.ac:9: installing './config.guess'
configure.ac:9: installing './config.sub'
configure.ac:8: installing './install-sh'
configure.ac:8: installing './missing'
Makefile.am: installing './INSTALL'
Makefile.am: installing './depcomp'
parallel-tests: installing './test-driver'
ATH is offline   Reply With Quote
Old 2022-01-17, 04:13   #10
WraithX
 
WraithX's Avatar
 
Mar 2006

2×32×29 Posts
Default

Yeah, sorry about all the updates. I should have got it all working before posting.

I'm really surprised to see all those warnings, and that you're having the same errors. Did you unzip that "23f1aaf2" zip file into an empty directory, or did you maybe overwrite the contents of an existing directory? If it was a new/empty directory then I'll need to know what version of msys2 you have, and what version of mingw64/gcc you have?

Could you try one more time extracting to a new directory and run your build process. If it fails again, could you post the entire output of all the commands you entered and all the output you see in msys?
WraithX is offline   Reply With Quote
Old 2022-01-17, 04:41   #11
ATH
Einyen
 
ATH's Avatar
 
Dec 2003
Denmark

22·7·112 Posts
Default

Code:
ATH@5960X MINGW64 ~
$ cd ecm-update_asmredc_for_win64/

ATH@5960X MINGW64 ~/ecm-update_asmredc_for_win64
$ autoreconf -i
libtoolize: putting auxiliary files in '.'.
libtoolize: copying file './ltmain.sh'
libtoolize: putting macros in AC_CONFIG_MACRO_DIRS, 'm4'.
libtoolize: copying file 'm4/libtool.m4'
libtoolize: copying file 'm4/ltoptions.m4'
libtoolize: copying file 'm4/ltsugar.m4'
libtoolize: copying file 'm4/ltversion.m4'
libtoolize: copying file 'm4/lt~obsolete.m4'
configure.ac:177: warning: The macro `AC_PROG_CC_C99' is obsolete.
configure.ac:177: You should run autoupdate.
../autoconf-2.71/lib/autoconf/c.m4:1659: AC_PROG_CC_C99 is expanded from...
configure.ac:177: the top level
configure.ac:206: warning: The macro `AC_HEADER_TIME' is obsolete.
configure.ac:206: You should run autoupdate.
../autoconf-2.71/lib/autoconf/headers.m4:743: AC_HEADER_TIME is expanded from...
configure.ac:206: the top level
configure.ac:288: warning: The macro `AC_FD_CC' is obsolete.
configure.ac:288: You should run autoupdate.
../autoconf-2.71/lib/autoconf/general.m4:399: AC_FD_CC is expanded from...
../autoconf-2.71/lib/m4sugar/m4sh.m4:692: _AS_IF_ELSE is expanded from...
../autoconf-2.71/lib/m4sugar/m4sh.m4:699: AS_IF is expanded from...
../autoconf-2.71/lib/autoconf/general.m4:2249: AC_CACHE_VAL is expanded from...
../autoconf-2.71/lib/autoconf/general.m4:2270: AC_CACHE_CHECK is expanded from...
acinclude.m4:76: GMP_PROG_M4 is expanded from...
configure.ac:288: the top level
configure.ac:289: warning: The macro `AC_FD_CC' is obsolete.
configure.ac:289: You should run autoupdate.
../autoconf-2.71/lib/autoconf/general.m4:399: AC_FD_CC is expanded from...
../autoconf-2.71/lib/m4sugar/m4sh.m4:692: _AS_IF_ELSE is expanded from...
../autoconf-2.71/lib/m4sugar/m4sh.m4:699: AS_IF is expanded from...
../autoconf-2.71/lib/autoconf/general.m4:2249: AC_CACHE_VAL is expanded from...
../autoconf-2.71/lib/autoconf/general.m4:2270: AC_CACHE_CHECK is expanded from...
acinclude.m4:286: GMP_ASM_UNDERSCORE is expanded from...
configure.ac:289: the top level
configure.ac:292: warning: The macro `AC_FD_CC' is obsolete.
configure.ac:292: You should run autoupdate.
../autoconf-2.71/lib/autoconf/general.m4:399: AC_FD_CC is expanded from...
acinclude.m4:157: GMP_TRY_ASSEMBLE is expanded from...
../autoconf-2.71/lib/m4sugar/m4sh.m4:692: _AS_IF_ELSE is expanded from...
../autoconf-2.71/lib/m4sugar/m4sh.m4:699: AS_IF is expanded from...
../autoconf-2.71/lib/autoconf/general.m4:2249: AC_CACHE_VAL is expanded from...
../autoconf-2.71/lib/autoconf/general.m4:2270: AC_CACHE_CHECK is expanded from...
acinclude.m4:194: GMP_ASM_TYPE is expanded from...
configure.ac:292: the top level
configure.ac:392: warning: The macro `AC_HEADER_STDC' is obsolete.
configure.ac:392: You should run autoupdate.
../autoconf-2.71/lib/autoconf/headers.m4:704: AC_HEADER_STDC is expanded from...
configure.ac:392: the top level
configure.ac:177: installing './compile'
configure.ac:9: installing './config.guess'
configure.ac:9: installing './config.sub'
configure.ac:8: installing './install-sh'
configure.ac:8: installing './missing'
Makefile.am: installing './INSTALL'
Makefile.am: installing './depcomp'
parallel-tests: installing './test-driver'

ATH@5960X MINGW64 ~/ecm-update_asmredc_for_win64
$ ./configure ABI=64 CC=gcc CFLAGS="-O3 -m64 -march=haswell -mtune=haswell" CPPFLAGS="-I/mingw64/include" LDFLAGS="-Wl,--stack,16777216 -static -static-libgcc -static-libstdc++ -L/mingw64/lib" --build=x86_64-pc-mingw64 --disable-assert --enable-static --disable-shared
configure: loading site script /etc/config.site
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for a race-free mkdir -p... /usr/bin/mkdir -p
checking for gawk... gawk
checking whether make sets $(MAKE)... yes
checking whether make supports nested variables... yes
checking build system type... x86_64-pc-mingw64
checking host system type... x86_64-pc-mingw64
checking for grep that handles long lines and -e... /usr/bin/grep
checking for egrep... /usr/bin/grep -E
checking for a sed that does not truncate output... /usr/bin/sed
checking whether make supports the include directive... yes (GNU style)
checking for gcc... gcc
checking whether the C compiler works... yes
checking for C compiler default output file name... a.exe
checking for suffix of executables... .exe
checking whether we are cross compiling... no
checking for suffix of object files... o
checking whether the compiler supports GNU C... yes
checking whether gcc accepts -g... yes
checking for gcc option to enable C11 features... none needed
checking whether gcc understands -c and -o together... yes
checking dependency style of gcc... gcc3
checking dependency style of gcc... gcc3
checking how to print strings... printf
checking for a sed that does not truncate output... (cached) /usr/bin/sed
checking for fgrep... /usr/bin/grep -F
checking for ld used by gcc... C:/msys64/mingw64/x86_64-w64-mingw32/bin/ld.exe
checking if the linker (C:/msys64/mingw64/x86_64-w64-mingw32/bin/ld.exe) is GNU ld... yes
checking for BSD- or MS-compatible name lister (nm)... /mingw64/bin/nm -B
checking the name lister (/mingw64/bin/nm -B) interface... BSD nm
checking whether ln -s works... no, using cp -pR
checking the maximum length of command line arguments... 8192
checking how to convert x86_64-pc-mingw64 file names to x86_64-pc-mingw64 format... func_convert_file_msys_to_w32
checking how to convert x86_64-pc-mingw64 file names to toolchain format... func_convert_file_msys_to_w32
checking for C:/msys64/mingw64/x86_64-w64-mingw32/bin/ld.exe option to reload object files... -r
checking for objdump... objdump
checking how to recognize dependent libraries... file_magic ^x86 archive import|^x86 DLL
checking for dlltool... dlltool
checking how to associate runtime and link libraries... func_cygming_dll_for_implib
checking for ar... ar
checking for archiver @FILE support... @
checking for strip... strip
checking for ranlib... ranlib
checking command to parse /mingw64/bin/nm -B output from gcc object... ok
checking for sysroot... no
checking for a working dd... /usr/bin/dd
checking how to truncate binary pipes... /usr/bin/dd bs=4096 count=1
checking for mt... no
checking if : is a manifest tool... no
checking for stdio.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for strings.h... yes
checking for sys/stat.h... yes
checking for sys/types.h... yes
checking for unistd.h... yes
checking for sys/time.h... yes
checking for dlfcn.h... no
checking for objdir... .libs
checking if gcc supports -fno-rtti -fno-exceptions... no
checking for gcc option to produce PIC... -DDLL_EXPORT -DPIC
checking if gcc PIC flag -DDLL_EXPORT -DPIC works... yes
checking if gcc static flag -static works... yes
checking if gcc supports -c -o file.o... yes
checking if gcc supports -c -o file.o... (cached) yes
checking whether the gcc linker (C:/msys64/mingw64/x86_64-w64-mingw32/bin/ld.exe) supports shared libraries... yes
checking dynamic linker characteristics... Win32 ld.exe
checking how to hardcode library paths into programs... immediate
checking whether stripping libraries is possible... yes
checking if libtool supports shared libraries... yes
checking whether to build shared libraries... no
checking whether to build static libraries... yes
checking for int64_t... yes
checking for uint64_t... yes
checking for unsigned long long int... yes
checking for long long int... yes
checking for an ANSI C-conforming const... yes
checking for inline... inline
checking for size_t... yes
checking if assembly code is ELF... checking how to run the C preprocessor... gcc -E
no
checking for suitable m4... m4
checking how to switch to text section... .text
checking how to export a symbol... .globl
checking what assembly label suffix to use... :
checking if globals are prefixed by underscore... no
checking how to switch to text section... (cached) .text
checking how to export a symbol... (cached) .globl
checking for assembler .type directive...
checking for working alloca.h... no
checking for alloca... yes
checking for egrep... (cached) /usr/bin/grep -E
checking for math.h... yes
checking for limits.h... yes
checking for malloc.h... yes
checking for strings.h... (cached) yes
checking for sys/time.h... (cached) yes
checking for unistd.h... (cached) yes
checking for io.h... yes
checking for signal.h... yes
checking for fcntl.h... yes
checking for windows.h... yes
checking for psapi.h... yes
checking for ctype.h... yes
checking for sys/types.h... (cached) yes
checking for sys/resource.h... no
checking for aio.h... no
checking for working strtod... yes
checking for pow in -lm... yes
checking for floor in -lm... yes
checking for sqrt in -lm... yes
checking for fmod in -lm... yes
checking for cos in -lm... yes
checking for aio_read in -lrt... no
checking for GetProcessMemoryInfo in -lpsapi... yes
checking for isascii... yes
checking for memset... yes
checking for strchr... yes
checking for strlen... yes
checking for strncasecmp... yes
checking for strstr... yes
checking for access... yes
checking for unlink... yes
checking for isspace... yes
checking for isdigit... yes
checking for isxdigit... yes
checking for time... yes
checking for ctime... yes
checking for gethostname... no
checking for gettimeofday... yes
checking for getrusage... no
checking for memmove... yes
checking for signal... yes
checking for fcntl... no
checking for fileno... yes
checking for setvbuf... yes
checking for fallocate... no
checking for aio_read... no
checking for aio_init... no
checking for _fseeki64... yes
checking for _ftelli64... yes
checking for malloc_usable_size... no
checking for gmp.h... yes
checking for recent GMP... yes
checking if GMP is MPIR... no
checking whether we can link against GMP... yes
checking if gmp.h version and libgmp version are the same... (6.2.1/6.2.1) yes
checking for __gmpn_add_nc... yes
checking for __gmpn_mod_34lsub1... yes
checking for __gmpn_redc_1... yes
checking for __gmpn_redc_2... yes
checking for __gmpn_mullo_n... yes
checking for __gmpn_redc_n... yes
checking for __gmpn_preinv_mod_1... yes
checking for __gmpn_mod_1s_4p_cps... yes
checking for __gmpn_mod_1s_4p... yes
checking for __gmpn_mul_fft... yes
checking for __gmpn_fft_next_size... yes
checking for __gmpn_fft_best_k... yes
checking for __gmpn_mulmod_bnm1... yes
checking for __gmpn_mulmod_bnm1_next_size... yes
checking for DLL/static GMP... static
checking whether we can link without -lpsapi... yes
checking whether compiler knows __attribute__((hot))... yes
checking for xsltproc... xsltproc
checking for docbook.xsl... no
checking whether self tests are run under valgrind... no
creating config.m4
checking that generated files are newer than configure... done
configure: creating ./config.status
config.status: creating Makefile
config.status: creating athlon/Makefile
config.status: creating pentium4/Makefile
config.status: creating x86_64/Makefile
config.status: creating powerpc64/Makefile
config.status: creating aprtcle/Makefile
config.status: creating build.vc12/Makefile
config.status: creating build.vc12/assembler/Makefile
config.status: creating build.vc12/ecm/Makefile
config.status: creating build.vc12/ecm_gpu/Makefile
config.status: creating build.vc12/libecm/Makefile
config.status: creating build.vc12/libecm_gpu/Makefile
config.status: creating build.vc12/tune/Makefile
config.status: creating build.vc12/bench_mulredc/Makefile
config.status: creating config.h
config.status: creating ecm.h
config.status: executing depfiles commands
config.status: executing libtool commands
configure: Configuration:
configure: Build for host type x86_64-pc-mingw64
configure: CC=gcc, CFLAGS=-O3 -m64 -march=haswell -mtune=haswell
configure: Linking GMP with -lgmp
configure: Using asm redc code from directory x86_64
configure: Not using SSE2 instructions in NTT code
configure: Using APRCL to prove factors prime/composite
configure: Assertions disabled
configure: Shell command execution disabled
configure: OpenMP disabled
configure: Memory debugging disabled

ATH@5960X MINGW64 ~/ecm-update_asmredc_for_win64
$ make
C:/msys64/mingw64/bin/make.exe  all-recursive
make[1]: Entering directory 'C:/msys64/home/ATH/ecm-update_asmredc_for_win64'
Making all in x86_64
make[2]: Entering directory 'C:/msys64/home/ATH/ecm-update_asmredc_for_win64/x86_64'
m4 -I../ -DOPERATION_mulredc1 `test -f mulredc1.asm || echo './'`mulredc1.asm >mulredc1.s
C:/msys64/usr/bin/sh.exe ../libtool    --mode=compile gcc  -O3 -m64 -march=haswell -mtune=haswell -c -o mulredc1.lo mulredc1.s
libtool: compile:  gcc -O3 -m64 -march=haswell -mtune=haswell -c mulredc1.s -o mulredc1.o
mulredc1.s: Assembler messages:
mulredc1.s:63: Error: junk at end of line, first unrecognized character is `-'
make[2]: *** [Makefile:414: mulredc1.lo] Error 1
rm mulredc1.s
make[2]: Leaving directory 'C:/msys64/home/ATH/ecm-update_asmredc_for_win64/x86_64'
make[1]: *** [Makefile:1963: all-recursive] Error 1
make[1]: Leaving directory 'C:/msys64/home/ATH/ecm-update_asmredc_for_win64'
make: *** [Makefile:837: all] Error 2

ATH@5960X MINGW64 ~/ecm-update_asmredc_for_win64
$
ATH is offline   Reply With Quote
Reply

Thread Tools


Similar Threads
Thread Thread Starter Forum Replies Last Post
CPU working 24/7 BaptisteTesson Information & Answers 5 2016-08-26 15:41
ssh -X not working? Dubslow Linux 3 2012-05-11 14:44
Log Out not working? cheesehead Forum Feedback 1 2012-03-19 17:13
DST not working? Dubslow Forum Feedback 2 2012-03-19 06:53
How is working on 44M-45M ? hbock Lone Mersenne Hunters 0 2005-04-06 17:16

All times are UTC. The time now is 16:00.


Tue Oct 4 16:00:44 UTC 2022 up 47 days, 13:29, 1 user, load averages: 2.59, 1.77, 1.46

Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2022, Jelsoft Enterprises Ltd.

This forum has received and complied with 0 (zero) government requests for information.

Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation.
A copy of the license is included in the FAQ.

≠ ± ∓ ÷ × · − √ ‰ ⊗ ⊕ ⊖ ⊘ ⊙ ≤ ≥ ≦ ≧ ≨ ≩ ≺ ≻ ≼ ≽ ⊏ ⊐ ⊑ ⊒ ² ³ °
∠ ∟ ° ≅ ~ ‖ ⟂ ⫛
≡ ≜ ≈ ∝ ∞ ≪ ≫ ⌊⌋ ⌈⌉ ∘ ∏ ∐ ∑ ∧ ∨ ∩ ∪ ⨀ ⊕ ⊗ 𝖕 𝖖 𝖗 ⊲ ⊳
∅ ∖ ∁ ↦ ↣ ∩ ∪ ⊆ ⊂ ⊄ ⊊ ⊇ ⊃ ⊅ ⊋ ⊖ ∈ ∉ ∋ ∌ ℕ ℤ ℚ ℝ ℂ ℵ ℶ ℷ ℸ 𝓟
¬ ∨ ∧ ⊕ → ← ⇒ ⇐ ⇔ ∀ ∃ ∄ ∴ ∵ ⊤ ⊥ ⊢ ⊨ ⫤ ⊣ … ⋯ ⋮ ⋰ ⋱
∫ ∬ ∭ ∮ ∯ ∰ ∇ ∆ δ ∂ ℱ ℒ ℓ
𝛢𝛼 𝛣𝛽 𝛤𝛾 𝛥𝛿 𝛦𝜀𝜖 𝛧𝜁 𝛨𝜂 𝛩𝜃𝜗 𝛪𝜄 𝛫𝜅 𝛬𝜆 𝛭𝜇 𝛮𝜈 𝛯𝜉 𝛰𝜊 𝛱𝜋 𝛲𝜌 𝛴𝜎𝜍 𝛵𝜏 𝛶𝜐 𝛷𝜙𝜑 𝛸𝜒 𝛹𝜓 𝛺𝜔