Re: The myth of fingerprints, er, no, garbage collectors

"Tim Bradshaw (as tfb at cley dot com)" <[email protected]> Sun, 28 Jun 2026 18:16:08 +0100
Newsgroups gmane.lisp.lispworks.general
Message-ID <[email protected]>
--Apple-Mail-74426F94-573E-46DF-AEF5-AEE95B9BEEE2
Content-Type: text/plain;
	charset=utf-8
Content-Transfer-Encoding: quoted-printable

On 28 Jun 2026, at 17:07, Yuri Davidovsky (as work at disclosure dot ie) <li=
[email protected]> wrote:
>=20
> where you have a group of 4 X single float fields followed by a group of 4=
 Y fields. If you wanted to calculate the hypothenuse by sqrt(x=C2=B2 + y=C2=
=B2), you could do that for 4 XY pairs in a go on a 4 lane 32 bit each SIMD.=


Ah, I can see this now.  For a position in space (with cartesian coordinates=
) SOA will lay things out as x1, y1, z1, x2, y2, z2, .... while I think you'=
re saying that x1, x2, x3, x4, y1, ... is more useful.  That makes sense.

I'm wondering now if I could persuade SOA to do that.  Clearly I could by ha=
ving each logical thing represent n particles, but that's fairly horrid.

Having mostly lost the will to live about it I'd quite like to get to a posi=
tion where I can either abandon it or ship it in a state which doesn't fill m=
e with guilt...

If someone does know of some non-hideous C-level  SIMD interfaces for macOS (=
or, probably easier, linux but they would need to be friendly to SBCL / CFFI=
 there) I would be interested.

(It is strange and sad how the Unix/C environment which was, when I first us=
ed it, this lightweight quick-and-dirty thing which was lovely to use has tu=
rned into this vast bureaucracy which makes me long for the simplicity of CL=
.)

--tim=

--Apple-Mail-74426F94-573E-46DF-AEF5-AEE95B9BEEE2
Content-Type: text/html;
	charset=utf-8
Content-Transfer-Encoding: quoted-printable

<html class=3D"apple-mail-supports-explicit-dark-mode"><head><meta http-equi=
v=3D"content-type" content=3D"text/html; charset=3Dutf-8"></head><body dir=3D=
"auto"><div dir=3D"ltr"></div><div dir=3D"ltr">On 28 Jun 2026, at 17:07, Yur=
i Davidovsky (as work at disclosure dot ie) &lt;[email protected]&gt; w=
rote:</div><div dir=3D"ltr"><blockquote type=3D"cite"><br></blockquote></div=
><blockquote type=3D"cite"><div dir=3D"ltr"><div>where you have a group of 4=
 X single float fields followed by a group of 4 Y fields. If you wanted to c=
alculate the hypothenuse by <i>sqrt(x=C2=B2 + y=C2=B2)</i>, you could do tha=
t for 4 XY pairs in a go on a 4 lane 32 bit each SIMD.</div><div></div></div=
></blockquote><br><div>Ah, I can see this now. &nbsp;For a position in space=
 (with cartesian coordinates) SOA will lay things out as x1, y1, z1, x2, y2,=
 z2, .... while I think you're saying that x1, x2, x3, x4, y1, ... is more u=
seful. &nbsp;That makes sense.</div><div><br></div><div>I'm wondering now if=
 I could persuade SOA to do that. &nbsp;Clearly I could by having each logic=
al thing represent n particles, but that's fairly horrid.</div><div><br></di=
v><div>Having mostly lost the will to live about it I'd quite like to get to=
 a position where I can either abandon it or ship it in a state which doesn'=
t fill me with guilt...</div><div><br></div><div>If someone does know of som=
e non-hideous C-level &nbsp;SIMD interfaces for macOS (or, probably easier, l=
inux but they would need to be friendly to SBCL / CFFI there) I would be int=
erested.</div><div><br></div><div>(It is strange and sad how the Unix/C envi=
ronment which was, when I first used it, this lightweight quick-and-dirty th=
ing which was lovely to use has turned into this vast bureaucracy which make=
s me long for the simplicity of CL.)</div><div><br></div><div>--tim</div></b=
ody></html>=

--Apple-Mail-74426F94-573E-46DF-AEF5-AEE95B9BEEE2--

_______________________________________________
Lisp Hug - the mailing list for LispWorks users
[email protected]
http://www.lispworks.com/support/lisp-hug.html