Can 750 user-mode binaries run on a 603e core?

Patrick J. Kelsey KelseyPJ at fairmountautomation.com
Thu Jul 27 22:18:20 EST 2006


Thanks, Matt.
 
Everything I was reading about binary compatibility was oriented in the 'regular' direction, assuring me that 603e binaries would run on the 750 just fine.  I'm glad to hear that it runs in the other direction also (at least for integer and FPU code, which is good enough for me).
 
Pat

	-----Original Message----- 
	From: Matt Sealey [mailto:matt at genesi-usa.com] 
	Sent: Thu 7/27/2006 7:27 AM 
	To: Patrick J. Kelsey; linuxppc-dev at ozlabs.org 
	Cc: 
	Subject: RE: Can 750 user-mode binaries run on a 603e core?
	
	


	The 603/603e has 1 integer unit. The 604/604e and 7xx lines had
	2.
	
	Basically if you optimize for the 750 it may queue up integer
	ops assuming there is room to execute them simultaneously, when
	in fact there isn't.
	
	But as kumar said, userspace is absolutely positively identical,
	the chips from 603e to the latest G4 are entirely binary
	compatible for integer and FPU code. Most people just optimize
	for the 603e and let the CPU handle the rest.
	
	--
	Matt Sealey <matt at genesi-usa.com>
	Manager, Genesi, Developer Relations
	
	
	> -----Original Message-----
	> From: linuxppc-dev-bounces+matt=genesi-usa.com at ozlabs.org
	> [mailto:linuxppc-dev-bounces+matt=genesi-usa.com at ozlabs.org]
	> On Behalf Of Patrick J. Kelsey
	> Sent: Thursday, July 27, 2006 5:54 AM
	> To: linuxppc-dev at ozlabs.org
	> Subject: RE: Can 750 user-mode binaries run on a 603e core?
	>
	> (sorry about that last one. had a bit of trouble with a
	> certain web based mail client...)
	> 
	> Thanks for the reply, Kumar.
	> 
	> That sounds encouraging.  One of the things I was worried
	> about with scheduling differences would be a differing number
	> of branch delay slots between the two core versions.  I'm
	> still a bit new to the details of the PowerPC architecture,
	> and at this point I'm not even sure if there are branch delay
	> slots, although it does seem from my reading that the 603e
	> and 750 pipelines are the same, in which case there would
	> ceratinly be no worries here.
	> 
	> At this point, I'm not concerned so much about an inefficient
	> schedule resulting from running -mcpu=750 code on a 603e as
	> long as the execution is correct.
	> 
	> Pat
	> 
	>
	>       -----Original Message-----
	>       From:
	> linuxppc-dev-bounces+kelseypj=fairmountautomation.com at ozlabs.o
	> rg on behalf of Kumar Gala
	>       Sent: Wed 7/26/2006 8:04 PM
	>       To: Patrick J. Kelsey
	>       Cc: linuxppc-dev at ozlabs.org
	>       Subject: Re: Can 750 user-mode binaries run on a 603e core?
	>      
	>      
	>
	>
	>       On Jul 26, 2006, at 5:27 PM, Patrick J. Kelsey wrote:
	>      
	>       > Hi,
	>       >
	>       > If have user-mode binaries built for a 750 core, say
	> with gcc -
	>       > mcpu=750, should I expect them to run on a 603e core?
	>  Would I have
	>       > to worry about unsupported instructions or
	> instruction scheduling
	>       > issues?
	>       >
	>       > If there's a better list for this question, please advise.
	>      
	>       Sure, there isn't different in the user space instruction sets
	>       between the 750 and 603e core.  The -mcpu is only tweaking
	>       instruction scheduling and making it specific for the 750.  The
	>       instruction scheduling differences aren't that huge if
	> memory serves
	>       me correctly.  The 750 probably takes fewer cycles on
	> multiple and
	>       divides.  I forget if the 750 has any additional
	> execution units that
	>       the 603e didn't have (additional integer units, etc.).
	>      
	>       - kumar
	>       _______________________________________________
	>       Linuxppc-dev mailing list
	>       Linuxppc-dev at ozlabs.org
	>       https://ozlabs.org/mailman/listinfo/linuxppc-dev
	>      
	>
	> _______________________________________________
	> Linuxppc-dev mailing list
	> Linuxppc-dev at ozlabs.org
	> https://ozlabs.org/mailman/listinfo/linuxppc-dev
	>
	
	



More information about the Linuxppc-dev mailing list