Hi Brian,

that's great to hear that everything passes on Windows 64.

I don't think there is any benefit to writing full assembly files for these
two new functions. The reason is that the function call overhead would be
about 9 cycles, which would be more than than actual saving over the C
macros that we have. So in fact, assembly files would likely slow it down.

However, I agree that it would be very beneficial if someone were to
volunteer to write _inline_ assembly for Windows 32 bit, as this would give
a 5% speedup on that platform. Conversely, if no one is actually using this
platform then letting support lapse seems to be an option. I will continue
to maintain MinGW build support for Windows 32 for a while and that will at
least provide an option for people on that platform. But I'm not going to
put time into non-essential assembly code for that platform as there are
simply too many other things to maintain.

I should have a better indication of my future in the next few weeks, at
which point I should know how much time I can put into MPIR in future. Even
so, with only two people volunteering we can't hope to accomplish much. So
I agree, we do need further volunteers!

Bill.


On 16 April 2013 10:05, Brian Gladman <[email protected]> wrote:

> On 15/04/2013 17:44, Bill Hart wrote:
> > All the extended test code I ran passed, so I'm happy that the code is
> > working well now.
> >
> > I've also switched all the precomputed inverses over to the new ones.
> >
> > I decided not to remove dc_divappr_q_n.c until Brian has had a chance to
> > catch up with Windows. (I think apart from the add_333 and sub_333
> > functions there should be no other changes on Windows Brian.)
> >
> > I have merged everything into master and will wait until Brian has been
> > able to test on Windows before removing the file dc_divappr_q_n.c, as
> > the latter will require quite a lot of build changes on linux and
> Windows.
>
> Congratulations Bill, the the Windows x64 builds work and pass all tests
> without needing any changes at all!
>
> The C versions of add_333 and sub_333 have to be used on Windows x64 as
> there is no inline assembler capability in the MSVC x64 compiler.  I
> could provide inline assembler for win32 but, since I am not using win32
> any more, this really should be done by someone who needs it and can
> hence maintain it.
>
> Inline assembler versions would be useful for the Windows mingw and
> mingw64 builds.  But since Jason passed away, these builds are sadly no
> longer being maintained.  Hence we again need a volunteer from the
> communities that need these builds to develop and maintain any inline
> assembler code involved.
>
> If these routines really matter, I can produce full assembler versions
> for x64 with the MSVC compiler but for the present, at least, it seems
> that the default C versions will have to do.
>
>    Brian
>
>

-- 
You received this message because you are subscribed to the Google Groups 
"mpir-devel" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
Visit this group at http://groups.google.com/group/mpir-devel?hl=en.
For more options, visit https://groups.google.com/groups/opt_out.


Reply via email to