วันอาทิตย์ที่ 9 กรกฎาคม พ.ศ. 2560

Re: [sage-devel] Re: [ODK participants] Blog post on fast multivariate arithmetic

He was certainly not using the awfully slow symbolic ring

sage: x,y,z,t,u = SR.var('x,y,z,t,u')
sage: f = (1 + x + y + 2*z^2 + 3*t^3 + 5*u^5)^6
sage: g = (1 + u + t + 2*z^2 + 3*y^3 + 5*x^5)^6
sage: %time h = (f*g).expand()
CPU times: user 8.99 s, sys: 25.7 ms, total: 9.01 s
Wall time: 9.01 s

versus

sage: R.<x,y,z,t,u> = QQ[]
sage: f = (1 + x + y + 2*z^2 + 3*t^3 + 5*u^5)^6
sage: g = (1 + u + t + 2*z^2 + 3*y^3 + 5*x^5)^6
sage: %time h = f*g
CPU times: user 191 ms, sys: 0 ns, total: 191 ms
Wall time: 191 ms

This 0.2 sec corresponds perfectly to his multiplication benchmarks.

On 10/07/2017 08:01, Ralf Stephan wrote:
> It's likely he used Sage's symbolics (and an old version at that) instead
> of poly rings. I replied there.
>
> On Sunday, July 9, 2017 at 5:39:29 PM UTC+2, William wrote:
>>
>> New blog post from Bill Hart. It includes a section claiming Sage's
>> multivariate polynomial arithmetic speed is much worse than expected...
>>
>> ---------- Forwarded message ---------
>> From: Bill Hart <goodwi...@googlemail.com <javascript:>>
>> Date: Sun, Jul 9, 2017 at 8:34 AM
>> Subject: [ODK participants] Blog post on fast multivariate arithmetic
>> To: Opendreamkit participants <partic...@opendreamkit.org <javascript:>>
>>
>>
>> Dear all,
>>
>> I've written a blog post on the fast multivariate arithmetic we've been
>> doing for ODK [1]. This is a deliverable which is due at the end of the
>> four years, so we've got a long way to go, but it is progressing nicely in
>> the interim.
>>
>> The next stage is to parallelise this, and we've hired Daniel Schultz to
>> work on our ODK deliverable which will do precisely this. He's an
>> experienced developer from the US who was already writing his own CAS (in
>> assembly language, believe it or not!)
>>
>> Bill.
>>
>> [1]
>> https://wbhart.blogspot.de/2017/07/update-on-fast-multivariate-polynomial.html
>> --
>> -- William Stein
>>
>

--
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+unsubscribe@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.

ไม่มีความคิดเห็น:

แสดงความคิดเห็น