This is the mail archive of the libc-alpha@sourceware.org mailing list for the glibc project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [ping][PATCH, AVX512, x86_64] AVX-512 support in glibc for x86_64


On Wed, Feb 12, 2014 at 4:14 AM, Zamyatin, Igor <igor.zamyatin@intel.com> wrote:
> Ping!
>
>> -----Original Message-----
>> From: Zamyatin, Igor
>> Sent: Wednesday, February 05, 2014 1:50 PM
>> To: Zamyatin, Igor; Joseph Myers
>> Cc: libc-alpha@sourceware.org; hjl.tools@gmail.com
>> Subject: RE: [PATCH, AVX512, x86_64] AVX-512 support in glibc for x86_64
>>
>> Ping.
>>
>> Is it ok for trunk whenever it's allowed to commit?
>>
>> Thanks,
>> Igor
>>
>> > -----Original Message-----
>> > From: libc-alpha-owner@sourceware.org [mailto:libc-alpha-
>> > owner@sourceware.org] On Behalf Of Zamyatin, Igor
>> > Sent: Tuesday, January 28, 2014 4:57 PM
>> > To: Joseph Myers
>> > Cc: libc-alpha@sourceware.org; hjl.tools@gmail.com
>> > Subject: RE: [PATCH, AVX512, x86_64] AVX-512 support in glibc for
>> > x86_64
>> >
>> > >
>> > > On Fri, 24 Jan 2014, Zamyatin, Igor wrote:
>> > >
>> > > > Attached patch adds AVX512 (new Intel ISA extension, see e.g.
>> > > > http://software.intel.com/en-us/intel-isa-
>> > > extensions?page=1&wapkw=soft
>> > > > ware%20development%20manual%20avx512#pid-16007-1495
>> > > > ) support in Glibc for x86_64.
>> > >
>> > > Do you plan to add support for i386 as well, or is there a reason no
>> > > such support is needed (that these registers are call-clobbered and
>> > > not used for argument passing / return, so libc needs no special
>> > > knowledge
>> > of them?)?
>> > > (Cf. bug 15402 suggesting running the AVX audit tests on i386, which
>> > > would make sense if they are valid for x86 even if no associated
>> > > changes to the dynamic linker are needed.)
>> > >
>> > > >         * sysdeps/x86_64/tst-audit9.c: New file.
>> > > >         * sysdeps/x86_64/tst-auditmod9a.c: New file.
>> > > >         * sysdeps/x86_64/tst-auditmod9b.c: New file.
>> > >
>> > > Any new test should have a copyright / license notice immediately
>> > > following the first line saying what the function of the file is.
>> >
>> > Updated patch attached.
>> >
>> > Thanks,
>> > Igor
>> >

A couple comments:

1.  i386 audit doesn't support xmm nor ymm registers.  Adding
xmm/ymm/zmm register support to i386 audit is orthogonal to
x86-64 audit.   It should be evaluated separately from adding
zmm register support to x86-64 audit.
2. Adding zmm register support to x86-64 ld.so has no performance
impact on non-threaded applications, except that when LD_AUDIT
is used.
3. Adding zmm register support to _dl_x86_64_save_sse and
_dl_x86_64_restore_sse will have some overhead. They are
called only when RTLD_PREPARE_FOREIGN_CALL
is used.  Among all glibc build/tests, it happens with

/export/build/gnu/glibc/build-x86_64-linux/dlfcn/glrefmain:
/export/build/gnu/glibc/build-x86_64-linux/elf/constload1:
/export/build/gnu/glibc/build-x86_64-linux/elf/reldep:
/export/build/gnu/glibc/build-x86_64-linux/elf/lateglobal:
/export/build/gnu/glibc/build-x86_64-linux/elf/dblload:
/export/build/gnu/glibc/build-x86_64-linux/elf/reldep5:
/export/build/gnu/glibc/build-x86_64-linux/elf/reldep7:
/export/build/gnu/glibc/build-x86_64-linux/elf/dblunload:
/export/build/gnu/glibc/build-x86_64-linux/elf/tst-deep1:
/export/build/gnu/glibc/build-x86_64-linux/elf/unload4:
/export/build/gnu/glibc/build-x86_64-linux/elf/reldep6:

Do they address all concerns people have?

Thanks.

-- 
H.J.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]