The dense multicore examples will take months to run in Flint, since we haven't written the code yet! :-)
But your explanation about the cost of conversion in the sparse case certainly more than accounts for overall difference in performance. Giac also has a symbolic front end, too, which Flint and Nemo do not. That is certainly important for people to realise. On Tuesday, 26 September 2017 13:13:06 UTC+2, parisse wrote: > > > > Le mardi 26 septembre 2017 10:43:10 UTC+2, Bill Hart a écrit : >> >> We used to do this, and Daniel noticed that it wasn't really threadsafe. >> > > It would be in my implementation, but inserting requires sometimes memory > allocation and it seems to slow down too much. Anyway, as explained > earlier, conversions from packed exponent-int128 coefficients to > polynomials with unpacked exponents and generic coefficients takes too much > time in the sparse case, I think is not worth rewriting a thread-efficient > sparse multivariate polynomial multiplication algorithms in giac. For > example in the n=12 case, the effective multiplication takes 1.3s on my Mac > and conversion takes twice more, in the n=16 case, effective multiplication > takes 11.5s and conversion 19s (run export GIAC_DEBUG=6 in a shell or > debug_infolevel:=6; in a script to see some details while running giac). > It's probably the same problem for Maple with their "native" vs sdmp > polynomial representation. This is something that the reader of your > benchmarks should keep in mind. > Thinks are completely different for dense polynomials, because the > conversion is dominated by the multiplication time (but fortunately > thread-efficient multiplication code is available for giac for these kind > of polynomials). > -- You received this message because you are subscribed to the Google Groups "sage-devel" group. To unsubscribe from this group and stop receiving emails from it, send an email to sage-devel+unsubscr...@googlegroups.com. To post to this group, send email to sage-devel@googlegroups.com. Visit this group at https://groups.google.com/group/sage-devel. For more options, visit https://groups.google.com/d/optout.