Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

D5.16: PARI suite release ( libpari , GP and GP2C ) that fully support parallelisation allowing individual implementations to scale gracefully between single core / multicore / massively parallel machines. #114

Open
minrk opened this issue Sep 8, 2015 · 24 comments

Comments

@minrk
Copy link
Contributor

@minrk minrk commented Sep 8, 2015

The Pari library is a state-of-the-art library for number theory and an important component of the Sage computational system. Together with the gp command line interface and the gp2c compiler, it forms the Pari/GP package. This deliverable implements a generic parallel engine in the Pari/GP system, uses it inside the system to implement fast parallel variants of existing sequential code and exports it for library users. The released Pari/GP suite (PARI-2.12) makes those improvements and new features available for the community, in particular Sage users and all softwares using the Pari library.

The MultiThread engine transparently supports: 1) sequential computation, 2) POSIX threads (for a single multicore machine) and 3) Message Passing Interface (MPI, for clusters). It is used throughout the library to improve a large number of high-level mathematical algorithms, including fast linear algebra over the rationals or cyclotomic fields, fast Chinese remainders, resultants, primality proofs, discrete logarithms, modular polymomials and isogeny-based algorithms, motivic L-functions... Those implementations scale transparently between single core, multicore and massively parallel machines.

@bpilorget

This comment has been minimized.

Copy link
Contributor

@bpilorget bpilorget commented Jan 11, 2018

#108 was merged into #114 after 3rd amendment to the contract

@IzabelaFaguet

This comment has been minimized.

Copy link
Contributor

@IzabelaFaguet IzabelaFaguet commented Apr 16, 2019

Hello everyone!
We are organising an ODK report writing sprint From August 24th to August 31st,
a good opportunity to finish the final reports in a pleasant and friendly environment.
Would someone like to participate?

The link to the poll: https://framadate.org/tfuHjZgcSU8pHI45

@KBelabas

This comment has been minimized.

Copy link
Contributor

@KBelabas KBelabas commented Aug 22, 2019

D5.16 is ready for comments / proofreading at OpenDreamKit/WP5/D5.16

@JohnCremona

This comment has been minimized.

Copy link
Contributor

@JohnCremona JohnCremona commented Aug 22, 2019

@nthiery

This comment has been minimized.

Copy link
Contributor

@nthiery nthiery commented Aug 23, 2019

Salut Karim, Bill,
Thanks a lot! I really appreciate the report delivery well ahead of time:-)
I have (proof)read the report (except the documentation in the appendix), and it looks very good to me (playing the non expert guinea pig).

Only three minor requests / suggestions:

  • Edit the first comment in this issue to add an abstract for the report. See e.g. #143 for an example. It will then be included in the pdf when I'll generate it.
  • Please rename the latex source to report.tex for consistency
  • About section 3: could you use plots to present the timing results? Typically for the first sentence of p.7? In similar circumstances, our reviewers requested this; they like visual material :-)
@nthiery

This comment has been minimized.

Copy link
Contributor

@nthiery nthiery commented Aug 23, 2019

@ClementPernet: please review!

@KBelabas

This comment has been minimized.

Copy link
Contributor

@KBelabas KBelabas commented Aug 24, 2019

New version available adressing Nicolas's comments.

@nthiery

This comment has been minimized.

Copy link
Contributor

@nthiery nthiery commented Aug 24, 2019

Thank you Karim!
Per your request, I updated the github issue description from the git repo. I made a small edit as well (removing the two first slightly redundant paragraphs). Of course I screwed up a bit, so the git history is not as clean as it should be :-)
I also pushed the pdf so that people can get it by following the "report" link above.

@KBelabas

This comment has been minimized.

Copy link
Contributor

@KBelabas KBelabas commented Aug 24, 2019

Looks good, thanks !

@nthiery

This comment has been minimized.

Copy link
Contributor

@nthiery nthiery commented Aug 26, 2019

Suggestion: please prepare a demo in notebook format; see #289.

@jdemeyer

This comment has been minimized.

Copy link
Contributor

@jdemeyer jdemeyer commented Aug 26, 2019

I updated the report with typos and minor rewordings. I also removed the very last part showing the equivalent GP code of the cypari2 code, since I didn't see the point of that (the section is about external applications).

@KBelabas

This comment has been minimized.

Copy link
Contributor

@KBelabas KBelabas commented Aug 27, 2019

Proofread again, no problem with your modifications. Thanks !

@nthiery

This comment has been minimized.

Copy link
Contributor

@nthiery nthiery commented Aug 27, 2019

Great to see this very close to done! @ClementPernet : do you have a chance to review it shortly? Then I can submit it and remove it from my plate :-) Thanks!

@ClementPernet

This comment has been minimized.

Copy link
Contributor

@ClementPernet ClementPernet commented Aug 28, 2019

@nthiery : I have reviewed it and already asked for some edits. @KBelabas already did some, told me he would add one more graph with speedups as I had asked. As soon as it is done, I the report will be ok to be sent.

@nthiery

This comment has been minimized.

Copy link
Contributor

@nthiery nthiery commented Aug 28, 2019

@ClementPernet

This comment has been minimized.

Copy link
Contributor

@ClementPernet ClementPernet commented Aug 29, 2019

Thanks @KBelabas for the new figure. One last remark: it would be very informative to have not only the speedups but also the timing value: for instance, simply add in the text what is the time of the sequential computation.

@KBelabas

This comment has been minimized.

Copy link
Contributor

@KBelabas KBelabas commented Aug 29, 2019

Thanks for the review. Done!

A minor change of strategy in matker() gave an extra x 2 speedup almost for free, without any regression this time (compared to previous attempts). This allowed to move rational reconstruction to parallel section, while keeping most of the early aborts. So I changed that data as well: the final figure looks better now :-)

@nthiery

This comment has been minimized.

Copy link
Contributor

@nthiery nthiery commented Aug 29, 2019

Yeah! x2 almost for free is always good to take :-)

Should I proceed with the submission?

@ClementPernet

This comment has been minimized.

Copy link
Contributor

@ClementPernet ClementPernet commented Aug 29, 2019

Excellent! I've nothing left to bug @KBelabas . I guess the report is good to go now!

@nthiery nthiery added Submitted and removed needs review labels Aug 29, 2019
@nthiery

This comment has been minimized.

Copy link
Contributor

@nthiery nthiery commented Aug 29, 2019

Congrats on being the first submitted deliverable of this reporting period :-)

Thanks everyone for all the work and reporting!

@ClementPernet

This comment has been minimized.

Copy link
Contributor

@ClementPernet ClementPernet commented Aug 30, 2019

@KBelabas @videlec : could you also update the progress report on Task T5.1 (which is essentially this deliverable) in section 1.2.5.2 of https://github.com/OpenDreamKit/OpenDreamKit/blob/master/ReportingPeriod3/TechnicalReport/WP5.tex
You can also just send me a paragraph and I'll edit the file.
Thanks

@KBelabas

This comment has been minimized.

Copy link
Contributor

@KBelabas KBelabas commented Aug 30, 2019

Summary inserted in WP5.tex, replacing previous template.

@ClementPernet

This comment has been minimized.

Copy link
Contributor

@ClementPernet ClementPernet commented Oct 18, 2019

@KBelabas @videlec (can you forward to Bill as well) :
I am preparing the presentation of WP5. There are 4 deliverables due for M48 and this is one of them. Since it is the only deliverable about PARI (D5.10 being merged into this one) I think it will be important to highlight the achievements of this deliverable. Can you prepare a few slides (about 4-5) summarizing the main achievements in this deliverable, and the perspectives and new directions which follow from this work.
My slides for WP5 will be beamer slides, so you can

  • prepare beamer slides
  • or just list the content in plain text, and I can beamerize them.
    I will need to have this ready before sunday 27.
    Thanks.
@KBelabas

This comment has been minimized.

Copy link
Contributor

@KBelabas KBelabas commented Oct 27, 2019

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
You can’t perform that action at this time.