Deutsch   English   Français   Italiano  
<dbaa17babbd2ca8362fad9f9ecd4b79c@www.novabbs.org>

View for Bookmarking (what is this?)
Look up another Usenet article

Path: ...!news.misty.com!weretis.net!feeder6.news.weretis.net!i2pn.org!i2pn2.org!.POSTED!not-for-mail
From: mitchalsup@aol.com (MitchAlsup1)
Newsgroups: comp.arch
Subject: Re: What integer C type to use
Date: Mon, 11 Mar 2024 19:56:32 +0000
Organization: Rocksolid Light
Message-ID: <dbaa17babbd2ca8362fad9f9ecd4b79c@www.novabbs.org>
References: <upq0cr$6b5m$1@dont-email.me> <uqobhv$3o4m9$2@dont-email.me> <1067c5b46cebaa18a0fc50fc423aa86a@www.novabbs.com> <uqpngc$3o4m9$3@dont-email.me> <uqpuid$bhg0$1@dont-email.me> <2024Feb17.190353@mips.complang.tuwien.ac.at> <uqqvkc$i2cu$1@dont-email.me> <uqvk2o$1snbf$1@dont-email.me> <ur0ka6$23ma8$1@dont-email.me> <dd9c82c9be34460dc6fea35c8608e51d@www.novabbs.org> <2024Feb20.083240@mips.complang.tuwien.ac.at> <2024Feb20.130029@mips.complang.tuwien.ac.at> <ur2jpf$2j800$1@dont-email.me> <2024Feb20.184737@mips.complang.tuwien.ac.at> <uraof0$kij0$1@newsreader4.netcologne.de> <3a1c5c42222d44ea006bc20d55e0c94c@www.novabbs.org> <urfcgs$1rne2$1@dont-email.me>
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Transfer-Encoding: 8bit
Injection-Info: i2pn2.org;
	logging-data="1653689"; mail-complaints-to="usenet@i2pn2.org";
	posting-account="PGd4t4cXnWwgUWG9VtTiCsm47oOWbHLcTr4rYoM0Edo";
User-Agent: Rocksolid Light
X-Spam-Checker-Version: SpamAssassin 4.0.0
X-Rslight-Site: $2y$10$NjHELtupAaZStoengoPo6eD5QUe8ZqVoRsEf93jlcU8qJlise/OES
X-Rslight-Posting-User: ac58ceb75ea22753186dae54d967fed894c3dce8
Bytes: 3364
Lines: 42

David Brown wrote:

> On 23/02/2024 20:55, MitchAlsup1 wrote:
>> Thomas Koenig wrote:
>> 
>>> Anton Ertl <anton@mips.complang.tuwien.ac.at> schrieb:
>>>> I know no implementation of a 64-bit architecture where ALU operations
>>>> (except maybe division where present) is slower in 64 bits than in 32
>>>> bits.  I would have chosen ILP64 at the time, so I can only guess at
>>>> their reasons:
>> 
>>> A guess: people did not want sizeof(float) != sizeof(float). float
>>> is cerainly faster than double.
>> 
>> Now, only in cache footprint. All your std operations take the same amount
>> of cycles DP vs. SP. Excepting for cache footprint latency:: perf(DP) == 
>> perf(SP)
>> 

> That's true - except when it is not.

> It is not true when you are using vector instructions, and you can do 
> twice as many SP instructions as DP instructions in the same register 
> and instruction.

You use the word vector where you mean SIMD. A CRAY-YMP doing single
would not be twice as fast because it was designed for 1 FADD + 1 FMUL 
+ 2 LD + 1 ST per cycle continuously. CRAY-YMP is the epitome of a
Vector machine.

The alternative word would be short-vector instead of SIMD.

> It is not true when you are using accelerators of various kinds, such as 
> graphics card processors.

> And it is not true on smaller processors, such as in the embedded world. 
>   On microcontrollers with floating point hardware for single and double 
> precision, SP can be up to twice as fast as DP.  And for many of the 
> more popular microcontrollers, you can have hardware SP but DP is done 
> in software - the difference there is clearly massive.

> But for big processors doing non-vector adds and multiplies, DP and SP 
> are usually equal in clock cycles (other than memory and cache effects).