Warning: mysqli::__construct(): (HY000/1203): User howardkn already has more than 'max_user_connections' active connections in D:\Inetpub\vhosts\howardknight.net\al.howardknight.net\includes\artfuncs.php on line 21
Failed to connect to MySQL: (1203) User howardkn already has more than 'max_user_connections' active connections
Warning: mysqli::query(): Couldn't fetch mysqli in D:\Inetpub\vhosts\howardknight.net\al.howardknight.net\index.php on line 66
Article <ac74bc302d4d78d29f720ccd19271e49@www.novabbs.org>
Deutsch   English   Français   Italiano  
<ac74bc302d4d78d29f720ccd19271e49@www.novabbs.org>

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

Path: ...!weretis.net!feeder9.news.weretis.net!i2pn.org!i2pn2.org!.POSTED!not-for-mail
From: mitchalsup@aol.com (MitchAlsup1)
Newsgroups: comp.arch
Subject: Re: Stealing a Great Idea from the 6600
Date: Thu, 20 Jun 2024 19:20:12 +0000
Organization: Rocksolid Light
Message-ID: <ac74bc302d4d78d29f720ccd19271e49@www.novabbs.org>
References: <lge02j554ucc6h81n5q2ej0ue2icnnp7i5@4ax.com> <v02eij$6d5b$1@dont-email.me> <152f8504112a37d8434c663e99cb36c5@www.novabbs.org> <v04tpb$pqus$1@dont-email.me> <v4f5de$2bfca$1@dont-email.me> <jwvzfrobxll.fsf-monnier+comp.arch@gnu.org> <v4f97o$2bu2l$1@dont-email.me> <613b9cb1a19b6439266f520e94e2046b@www.novabbs.org> <v4hsjk$2vk6n$1@dont-email.me> <6b5691e5e41d28d6cb48ff6257555cd4@www.novabbs.org> <v4tfu3$1ostn$1@dont-email.me> <96280554541a8a9b1a29a5cbd5b7c07b@www.novabbs.org> <v4v3ot$22rd9$1@dont-email.me> <99fe225bd3d326964ec86862fe38a437@www.novabbs.org> <v51m3c$2lh9s$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="629735"; mail-complaints-to="usenet@i2pn2.org";
	posting-account="65wTazMNTleAJDh/pRqmKE7ADni/0wesT78+pyiDW8A";
User-Agent: Rocksolid Light
X-Rslight-Posting-User: ac58ceb75ea22753186dae54d967fed894c3dce8
X-Spam-Checker-Version: SpamAssassin 4.0.0
X-Rslight-Site: $2y$10$B8kj4ErRQN6MQPJVZKhrteu3DxxF6hDHFHK70mU9RKBRmPjIyEZnC
Bytes: 3546
Lines: 45

Thomas Koenig wrote:

> MitchAlsup1 <mitchalsup@aol.com> schrieb:

>> Now, if &b[1] happens to = &a[0], then your construction fails while
>> VVM
>> succeeds--it just runs slower because there IS a dependency checked by
>> HW and enforced. In those situations where the dependency is
>> nonexistent,
>> then the loop vectorizes--and the programmer remains blissfuly unaware.

> The performance loss can be significant, unfortunately, depending
> on the ratio of the width of the data in quesiton to the width of
> the SIMD which actually performs the operation.  In the case of
> 8-bit data and 256-bit wide SIMD, this would be a factor of 32,
> which could lead to a slowdown of a factor of... 25,  maybe?
> This would be enough to trigger bug reports, I can tell you from
> experience :-)

Between 2000 and 2006 I was enamored with SIMD as a proxy for
vectorization. Then, as illustrated above, I started to recognize
the dark alley SIMD was leading others down. In effect it was no
better than vectorization and made the compilers so much more 
difficult (alias analysis),... and then there is the explosion
of OpCode space consumption,... All of which I wanted to avoid.
The R in RISC should stand for Reduced, not Ridiculous.

Those are simply some of the reasons VVM is "not like that".
VVM requires that the compiler solve exactly none of the
alias problems, the minimum length problems, and works when
typical CRAY-like vectors fail, and where SIMD fails. The
reason it works is the HW recognizes aliasing and slows down
instead of jumping off the cliff.

> One technique that could get around that would be loop reversal,
> with a branch to the correct loop at runtime (or a predicate
> choosing the right values for the loop constants).

Costing code density, compiler complexity, assembly language
programming complexity, and is unnecessary.

> An option to raise an exception when there is a slowdown due
> to loops running the wrong direction could be helpful in this
> context.

Making the slow down even slower/greater.