public inbox for libffi-discuss@sourceware.org
 help / color / mirror / Atom feed
* Xeon Phi
@ 2014-10-14  9:14 Andrew Haley
  2014-10-14  9:16 ` pinskia
  0 siblings, 1 reply; 6+ messages in thread
From: Andrew Haley @ 2014-10-14  9:14 UTC (permalink / raw)
  To: libffi-discuss

What's the status of Xeon Phi support?  There seem to be some packages on the
Interweb, but I don't see anything in libffi git.

Andrew.

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: Xeon Phi
  2014-10-14  9:14 Xeon Phi Andrew Haley
@ 2014-10-14  9:16 ` pinskia
  2014-10-14  9:17   ` Andrew Haley
  0 siblings, 1 reply; 6+ messages in thread
From: pinskia @ 2014-10-14  9:16 UTC (permalink / raw)
  To: Andrew Haley; +Cc: libffi-discuss





> On Oct 14, 2014, at 2:14 AM, Andrew Haley <aph@redhat.com> wrote:
> 
> What's the status of Xeon Phi support?  There seem to be some packages on the
> Interweb, but I don't see anything in libffi git.

Xeon phi is just x86_64 linux. 

> 
> Andrew.

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: Xeon Phi
  2014-10-14  9:16 ` pinskia
@ 2014-10-14  9:17   ` Andrew Haley
  2014-10-14  9:52     ` Anthony Green
  2014-10-14 10:08     ` Jakub Jelinek
  0 siblings, 2 replies; 6+ messages in thread
From: Andrew Haley @ 2014-10-14  9:17 UTC (permalink / raw)
  To: pinskia; +Cc: libffi-discuss

On 14/10/14 10:16, pinskia@gmail.com wrote:

> 
>> On Oct 14, 2014, at 2:14 AM, Andrew Haley <aph@redhat.com> wrote:
>>
>> What's the status of Xeon Phi support?  There seem to be some packages on the
>> Interweb, but I don't see anything in libffi git.
> 
> Xeon phi is just x86_64 linux. 

No it's not.  There is a completely different FPU and a different ABI.

Andrew.


^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: Xeon Phi
  2014-10-14  9:17   ` Andrew Haley
@ 2014-10-14  9:52     ` Anthony Green
  2014-10-14 10:08     ` Jakub Jelinek
  1 sibling, 0 replies; 6+ messages in thread
From: Anthony Green @ 2014-10-14  9:52 UTC (permalink / raw)
  To: Andrew Haley; +Cc: pinskia, libffi-discuss

Andrew Haley <aph@redhat.com> writes:

> On 14/10/14 10:16, pinskia@gmail.com wrote:
>
>> 
>>> On Oct 14, 2014, at 2:14 AM, Andrew Haley <aph@redhat.com> wrote:
>>>
>>> What's the status of Xeon Phi support?  There seem to be some packages on the
>>> Interweb, but I don't see anything in libffi git.
>> 
>> Xeon phi is just x86_64 linux. 
>
> No it's not.  There is a completely different FPU and a different ABI.

Yes, there's no SSE instructions, and more...

Somebody needs to find the relevant changes in here and submit them:
https://github.com/bpartridge/xeon_phi_ctypes/tree/master/libffi

AG


^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: Xeon Phi
  2014-10-14  9:17   ` Andrew Haley
  2014-10-14  9:52     ` Anthony Green
@ 2014-10-14 10:08     ` Jakub Jelinek
  2014-10-14 10:23       ` Andrew Haley
  1 sibling, 1 reply; 6+ messages in thread
From: Jakub Jelinek @ 2014-10-14 10:08 UTC (permalink / raw)
  To: Andrew Haley; +Cc: pinskia, libffi-discuss

On Tue, Oct 14, 2014 at 10:17:22AM +0100, Andrew Haley wrote:
> On 14/10/14 10:16, pinskia@gmail.com wrote:
> 
> > 
> >> On Oct 14, 2014, at 2:14 AM, Andrew Haley <aph@redhat.com> wrote:
> >>
> >> What's the status of Xeon Phi support?  There seem to be some packages on the
> >> Interweb, but I don't see anything in libffi git.
> > 
> > Xeon phi is just x86_64 linux. 
> 
> No it's not.  There is a completely different FPU and a different ABI.

I guess it really depends on which Xeon Phi you are talking about.

There is Knights Ferry, which has been a prototype only, then
Knights Corner, which is the one currently shipping, which AFAIK is
a stripped down i586-ish (but 64-bit) ISA (so, no MMX/SSE and later,
no CMOV and various other post-i586 ISA additions) with i387 FPU
and a 512-bit vector unit.  This isn't really supported by vanilla GCC,
patches exist AFAIK for the non-vector unit part, but the vector unit isn't
really supported in GCC.  Not sure what exact ABI is this one using,
supposedly some x86-64-ish ABI, just with what is passed normally in SSE/SSE2
registers is passed in the zmm? registers of the vector unit?
Then there is going to be Knights Landing, see
http://en.wikipedia.org/wiki/Xeon_Phi
which is likely going to be pretty standard x86-64-ish ABI and ISA
(contemporary Airmont), with AVX512F etc. extensions, fully supported by GCC.
So, for the last one, I don't think any extra support is really needed
(unless libffi has supports for AVX/AVX2 vectors already, then AVX512
support would be needed too).

	Jakub

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: Xeon Phi
  2014-10-14 10:08     ` Jakub Jelinek
@ 2014-10-14 10:23       ` Andrew Haley
  0 siblings, 0 replies; 6+ messages in thread
From: Andrew Haley @ 2014-10-14 10:23 UTC (permalink / raw)
  To: Jakub Jelinek; +Cc: pinskia, libffi-discuss

On 10/14/2014 11:08 AM, Jakub Jelinek wrote:
> On Tue, Oct 14, 2014 at 10:17:22AM +0100, Andrew Haley wrote:
>> On 14/10/14 10:16, pinskia@gmail.com wrote:
>>
>>>
>>>> On Oct 14, 2014, at 2:14 AM, Andrew Haley <aph@redhat.com> wrote:
>>>>
>>>> What's the status of Xeon Phi support?  There seem to be some packages on the
>>>> Interweb, but I don't see anything in libffi git.
>>>
>>> Xeon phi is just x86_64 linux. 
>>
>> No it's not.  There is a completely different FPU and a different ABI.
> 
> I guess it really depends on which Xeon Phi you are talking about.

Right now, the one which exists.  :-)

> There is Knights Ferry, which has been a prototype only, then
> Knights Corner, which is the one currently shipping, which AFAIK is
> a stripped down i586-ish (but 64-bit) ISA (so, no MMX/SSE and later,
> no CMOV and various other post-i586 ISA additions) with i387 FPU and
> a 512-bit vector unit.  This isn't really supported by vanilla GCC,
> patches exist AFAIK for the non-vector unit part, but the vector
> unit isn't really supported in GCC.  Not sure what exact ABI is this
> one using, supposedly some x86-64-ish ABI, just with what is passed
> normally in SSE/SSE2 registers is passed in the zmm? registers of
> the vector unit?

Yes.  k1om-psabi-1.0.pdf at
https://software.intel.com/en-us/forums/topic/278102

> Then there is going to be Knights Landing, see
> http://en.wikipedia.org/wiki/Xeon_Phi which is likely going to be
> pretty standard x86-64-ish ABI and ISA (contemporary Airmont), with
> AVX512F etc. extensions, fully supported by GCC.  So, for the last
> one, I don't think any extra support is really needed (unless libffi
> has supports for AVX/AVX2 vectors already, then AVX512 support would
> be needed too).

Mmm, so I guess we need a proper name for it.  The ABI seems to be
called "K1OM Architecture".

Andrew.

^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2014-10-14 10:23 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2014-10-14  9:14 Xeon Phi Andrew Haley
2014-10-14  9:16 ` pinskia
2014-10-14  9:17   ` Andrew Haley
2014-10-14  9:52     ` Anthony Green
2014-10-14 10:08     ` Jakub Jelinek
2014-10-14 10:23       ` Andrew Haley

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).