mersenneforum.org MLucas on IBM Mainframe
 Register FAQ Search Today's Posts Mark Forums Read

2016-02-10, 06:09   #45
Dubslow

"Bunslow the Bold"
Jun 2011
40<A<43 -89<O<-88

1C1D16 Posts

Quote:
 Originally Posted by alexvong1995 Just find this documentation z/architecture reference summary on the internet. Page 22 to page 25 shows the 139 vector instructions (of course I do not really try to count!), something like VMAH (vector multiple and add high)... Also I have created a s390x testing branch (there are only 2 commits), people interested are encouraged to test if it builds and passes the test, the instruction is as followed: $git clone https://gitlab.com/mlucas-ll/mlucas.git$ cd mlucas && touch * && git checkout s390x \$ mkdir build && cd build && ../configure && make -j && make -j check (of course you must have git, gcc and make installed!)
If I may go somewhat off topic here, how would you compare GitLab hosting and web interface to GitHub?

 2016-02-10, 06:17 #46 alexvong1995   Dec 2014 1001012 Posts Alright, I find out it actually does not build on amd64, see https://gitlab.com/mlucas-ll/mlucas/builds, there are serveral error messages: In file included from .././src/factor.c:3973:0: .././src/factor_test.h:603:11: error: too few arguments to function 'twopmodq100_2WORD_DOUBLE' res64 = twopmodq100_2WORD_DOUBLE(p64, k); In file included from .././src/factor.c:3973:0: .././src/factor_test.h:1156:11: error: incompatible type for argument 2 of 'twopmodq100_2WORD_DOUBLE' res64 = twopmodq100_2WORD_DOUBLE(p64, q128); In file included from .././src/factor.c:3973:0: .././src/factor_test.h:1156:11: error: too few arguments to function 'twopmodq100_2WORD_DOUBLE' res64 = twopmodq100_2WORD_DOUBLE(p64, q128); In file included from .././src/factor.c:3973:0: .././src/factor_test.h:1179:11: error: too few arguments to function 'twopmodq100_2WORD_DOUBLE_q2' res64 = twopmodq100_2WORD_DOUBLE_q2(p64, k,k);
2016-02-10, 07:46   #47
ewmayer
2ω=0

Sep 2002
República de California

22×33×7×13 Posts

Thanks for the instruction reference, Alex - that looks like what I need, and there does appear to be a full complement of vector-float functionality.

Quote:
 Originally Posted by alexvong1995 Alright, I find out it actually does not build on amd64, see https://gitlab.com/mlucas-ll/mlucas/builds, there are serveral error messages: In file included from .././src/factor.c:3973:0: .././src/factor_test.h:603:11: error: too few arguments to function 'twopmodq100_2WORD_DOUBLE' res64 = twopmodq100_2WORD_DOUBLE(p64, k); In file included from .././src/factor.c:3973:0: .././src/factor_test.h:1156:11: error: incompatible type for argument 2 of 'twopmodq100_2WORD_DOUBLE' res64 = twopmodq100_2WORD_DOUBLE(p64, q128); In file included from .././src/factor.c:3973:0: .././src/factor_test.h:1156:11: error: too few arguments to function 'twopmodq100_2WORD_DOUBLE' res64 = twopmodq100_2WORD_DOUBLE(p64, q128); In file included from .././src/factor.c:3973:0: .././src/factor_test.h:1179:11: error: too few arguments to function 'twopmodq100_2WORD_DOUBLE_q2' res64 = twopmodq100_2WORD_DOUBLE_q2(p64, k,k);
OK, two things here:

1. I clearly need to update the API for this subset of TF calls, but you should not need factor.o to link currently, because TF functionality is not supported in the default Mlucas build;

2. These calls are getting included because USE_FMADD is getting def'd, which implies you are trying an AVX2/FMA3 build (-DUSE_AVX2 compile flag). Unless AMD has radically upgraded their AVX-and-beyond capabilities in the past year -- according to Wikipedia their very first CPU with AVX2 was 'Carrizo' (formerly codenamed 'Excavator') last year -- AMD builds probably should not go above SSE2. But if you can get AVX and/or AVX2 builds tested on something close to the latest AMD processor, let's see if they still suffer for the 'AVX slower than SSE2' handicap George noted based on his Prime95 tests and decide what to do config-wise based on that.

2016-02-10, 07:51   #48
alexvong1995

Dec 2014

1001012 Posts

Quote:
 Originally Posted by Dubslow If I may go somewhat off topic here, how would you compare GitLab hosting and web interface to GitHub?
It is a hard question, there isn't a clearly winner.
I think having both accounts make it easier to submit pull request to projects hosted in either site.
For github, it says "Gratis for public, paid for private."
For gitlab, it says "Unlimited public and private repos, unlimited public and private collaborators".
For web interface, it seems github is more responsive than gitlab.
The UI of both sites looks comparable to me, I am using git most of the time anyway, so I think it is fine as long as the diff is shown nicely.
For CI, github uses travis-ci and gitlab uses gitlab-ci.
For js, gitlab releases all js under mit/expat, so you don't need to worry what the js code is doing.
gitlab also releases its core as free-sw under mit/expat, known as gitlab-ce, github doesn't.
For popularity, github is clearly more popular, but both are used by big organizations.

There is one site getting increasingly popular https://notabug.org/, it is a community effort.

2016-02-10, 09:40   #49
Dubslow

"Bunslow the Bold"
Jun 2011
40<A<43 -89<O<-88

3·2,399 Posts

Quote:
 Originally Posted by alexvong1995 It is a hard question, there isn't a clearly winner. I think having both accounts make it easier to submit pull request to projects hosted in either site. The wikipedia page is a good start on it. For github, it says "Gratis for public, paid for private." For gitlab, it says "Unlimited public and private repos, unlimited public and private collaborators". For web interface, it seems github is more responsive than gitlab. The UI of both sites looks comparable to me, I am using git most of the time anyway, so I think it is fine as long as the diff is shown nicely. For CI, github uses travis-ci and gitlab uses gitlab-ci. For js, gitlab releases all js under mit/expat, so you don't need to worry what the js code is doing. gitlab also releases its core as free-sw under mit/expat, known as gitlab-ce, github doesn't. For popularity, github is clearly more popular, but both are used by big organizations. There is one site getting increasingly popular https://notabug.org/, it is a community effort.
Thanks, that's the sort of excellent summary I was looking for. I've discussed before the idea of moving a lot of the software here away from SourceForge/Subversion, and GitHub is of course the obvious alternative, though it's also good to track alternatives like GitLab and notabug.org.

2016-02-13, 07:02   #50
Dubslow

"Bunslow the Bold"
Jun 2011
40<A<43 -89<O<-88

719710 Posts

Quote:
 Originally Posted by Dubslow Thanks, that's the sort of excellent summary I was looking for. I've discussed before the idea of moving a lot of the software here away from SourceForge/Subversion, and GitHub is of course the obvious alternative, though it's also good to track alternatives like GitLab and notabug.org.
Quote:
 Originally Posted by alexvong1995 It is a hard question, there isn't a clearly winner. I think having both accounts make it easier to submit pull request to projects hosted in either site. The wikipedia page is a good start on it. For github, it says "Gratis for public, paid for private." For gitlab, it says "Unlimited public and private repos, unlimited public and private collaborators". For web interface, it seems github is more responsive than gitlab. The UI of both sites looks comparable to me, I am using git most of the time anyway, so I think it is fine as long as the diff is shown nicely. For CI, github uses travis-ci and gitlab uses gitlab-ci. For js, gitlab releases all js under mit/expat, so you don't need to worry what the js code is doing. gitlab also releases its core as free-sw under mit/expat, known as gitlab-ce, github doesn't. For popularity, github is clearly more popular, but both are used by big organizations. There is one site getting increasingly popular https://notabug.org/, it is a community effort.
Quote:
 Originally Posted by Dubslow If I may go somewhat off topic here, how would you compare GitLab hosting and web interface to GitHub?
One last post on the matter (maybe a mod might split this off for me):

https://www.b.agilob.net/choose-gitl...-next-project/

^ An essay explicating why GitLab is better than GitHub. (Incidentally, I know the guy who runs that site (in an online manner same as I know everyone here) and I've worked with him on some projects.)

2016-03-11, 22:02   #51
Lorenzo

Aug 2010
Republic of Belarus

2·5·17 Posts

Quote:
 Originally Posted by ewmayer That explains the excellent timing-scaling in going to larger FFT lengths which we see in Lorenzo's cfg-file results. If we had some relatively efficient way to map x86_64 SIMD code to this arch's SIMD, things could get rather interesting. I shall have a look at the PDF Lorenzo linked later today.
Hello! How about SIMD? Did you tried change code to support SIMD instructions for S390x arch?

2016-03-11, 22:18   #52
ewmayer
2ω=0

Sep 2002
República de California

982810 Posts

Quote:
 Originally Posted by Lorenzo Hello! How about SIMD? Did you tried change code to support SIMD instructions for S390x arch?
Excuse me if I didn't make it clear -- that's more in the way of a long-term 'maybe' project, not something one can make happen in a few weeks. And from a number-of-potential-users the coding effort is likely not justified. I am busy with another round of Intel SIMD optimizations and preparing for their next-gen AVX512 chips ... both of which have/will-have a very large user base.

As my code is open-source, anyone with PPC-and-beyond assembler expertise and time to spare is welcome to have at it! Take a modest-size x86_64 SSE2 inline-asm macro - there are many to chose from - stick it into a suitable C test harness, use results to guide translation to IBM assembler.

2016-03-13, 08:45   #53
Lorenzo

Aug 2010
Republic of Belarus

17010 Posts

Quote:
 Originally Posted by ewmayer Excuse me if I didn't make it clear -- that's more in the way of a long-term 'maybe' project, not something one can make happen in a few weeks. And from a number-of-potential-users the coding effort is likely not justified. I am busy with another round of Intel SIMD optimizations and preparing for their next-gen AVX512 chips ... both of which have/will-have a very large user base. As my code is open-source, anyone with PPC-and-beyond assembler expertise and time to spare is welcome to have at it! Take a modest-size x86_64 SSE2 inline-asm macro - there are many to chose from - stick it into a suitable C test harness, use results to guide translation to IBM assembler.
Ok) Sure) Thank you for explanation

Just double checked on IBM S390 http://www.mersenne.org/report_expon...1523593&full=1

 Similar Threads Thread Thread Starter Forum Replies Last Post daxmick Software 5 2018-01-05 09:48 Damian Mlucas 17 2017-11-13 18:12 ewmayer Mlucas 3 2017-06-17 11:18 Unregistered Mlucas 0 2009-10-27 20:35 delta_t Mlucas 14 2007-10-04 05:45

All times are UTC. The time now is 13:32.

Thu Nov 26 13:32:28 UTC 2020 up 77 days, 10:43, 3 users, load averages: 2.22, 1.64, 1.59