MPFR/MPC/iRRAM Workshop Trier 2018

iRRAM-MPFR-MPC Developers Meeting Dagstuhl 2018

Fourth MPFR-MPC Developers Meeting Toulouse 2016

Third MPFR-MPC Developers Meeting Nancy 2014

Second MPFR-MPC Developers Meeting Bordeaux 2012

Following the success of the 2011 meeting, we held another joint MPFR/MPC developer meeting.

The goal of this meeting was to discuss future developments of the GNU MPFR and GNU MPC libraries. It was open to everyone interested in contributing to GNU MPFR and/or GNU MPC, be it by writing new code or by contributing new ideas. The workshop was partially supported by Andreas Enge's grant ERC ANTICS.


25 June 2012, 12:00 to 27 June 2012, 15:00


Salle 385, Institut de Mathématiques de Bordeaux, University of Bordeaux, France


Monday, June 25

Discussion: MPFR/MPCbench program (like GMPbench) (AE, PP, PT, VL)
Result: Start with simplifying the testing framework of MPC, towards something even simpler than in MPFI; hopefully copy-paste to MPFR later
scripts and web page comparing timings with different systems, as done for mpfr
Result: Should share code with the benchmark of the previous item
Discussion: Static assertions in MPFR: option in C11, suggestion by PP for older standards
Result: Should be implemented in a way compatible with different standards
Discussion: Improve test coverage
Result: Branches poorly covered in MPC (return values), some files in MPFR; more or less difficult to fix. Some progress (AE, BD, NM, PZ). At the end of the workshop, 100% of the lines are covered in MPC, and several small bugs are uncovered and fixed.
Coffee break
Discussion: Rounding to nearest ties away mode
Result: Maybe as MPFR_RNDW to have a one letter code
Discussion: mpfr_set_float128 and mpfr_get_float128
Result: Implemented (PZ)

Tuesday, June 26

Presentation: Isolate complex roots of univariate polynomials (BD)
Coffee break
Discussion: Release 1.0 of MPC
Result: Release candidate end of June, to be sent to gcc list and gnu platform testers list (TODO AE). After release, create a branch to develop 1.1 independently of bug fixes to be released as 1.0.1. Keep with svn. For release 1.1: Require new GMP and MPFR. Implement rounding mode MPFR_RNDA. Extend testing framework to derive more directed rounding tests from specific tests in the file. Maybe add a flag to enable more costly tests.
A release candidate of MPFR 3.1.1 is prepared (VL).
Discussion: Static assertions for MPFR
Result: Implemented (PP, VL); need to be used throughout the code (TODO MPFR)
Discussion: Rounding to nearest ties away mode
Result: Not implemented as a native rounding mode, postprocessing possible from directed rounding at higher precision: We need a function that implements the rounding, given as input a function int foo (mpfr_t, mpfr_srcptr, mpfr_rnd_t) (TODO PZ).
Discussion: New simplified testing framework using description of function prototypes in .dsc file (MG, PT)
Result: Concept validated, remains to be implemented.
Presentation: Continuous integration with hydra (LC)
Result: Update of the recipes (AE, LC). The platform is not suited for measuring performance regressions, as the tests may be run on machines with varying specifications.
Coffee break
Analysed, implemented and tested a fast algorithm for mpc_fma (AE, BD, PZ)
Dinner at Croc-Loup

Wednesday, June 27

Coffee break

More coding.

Presentation of new test framework implementation (MG, PT).

ADT on mid-rad arithmetic: Postponed to 2014, since call for proposals closed.

Analysis and implementation of a new function mpc_rootofunity, computing the canonical primitive root of unity of any given order, to be released with MPC 1.1 (AE, PZ).


MPFR-MPC Developers Meeting Nancy 2011