The Wiert Corner – irregular stream of stuff

• Email Subscription

Join 1,497 other followers

Archive for the ‘History’ Category

Fast inverse square root – Wikipedia

Posted by jpluimers on 2019/01/24

Cult code via [WayBack] Fast inverse square root – Wikipedia part of [WayBack] Quake-III-Arena/blob/master/code/game/q_math.c:

```float Q_rsqrt( float number )
{
long i;
float x2, y;
const float threehalfs = 1.5F;

x2 = number * 0.5F;
y  = number;
i  = * ( long * ) &y;                       // evil floating point bit level hacking
i  = 0x5f3759df - ( i >> 1 );               // what the fuck?
y  = * ( float * ) &i;
y  = y * ( threehalfs - ( x2 * y * y ) );   // 1st iteration
// y  = y * ( threehalfs - ( x2 * y * y ) );   // 2nd iteration, this can be removed

return y;
}```

It is a really fast way to approximate the square root for 32-bit IEEE754 calculations having origins around 1986:

• [WayBackSymplectic Spacewar » Cleve’s Corner: Cleve Moler on Mathematics and Computing:

Cleve Moler replied on June 27th, 2012 9:35 pm UTC :

Jotaf — Thanks very much for your comment, and for reminding me about the fast inverse square root hack. I didn’t realize that the trick had attained a kind of cult status in the graphics community. The trick uses bit-fiddling integer operations on a floating point number to get a good starting approximation for Newton’s iteration. The Wikipedia article that you link to describes the trick in great detail, and also links to an article by Rys Sommefeldt about its origins. Sommefeldt goes back to the late ’80s and to me and my colleague Greg Walsh at Ardent Computer. I actually learned about trick from code written by Velvel Kahan and K.C. Ng at Berkeley around 1986. Here is a link to their description, in comments at the end of the fdlibm code for sqrt. http://www.netlib.org/fdlibm/e_sqrt.c . — Cleve

• [WayBack] http://www.netlib.org/fdlibm/e_sqrt.c

By now there is also a constant for 64-bit IEEE754 calculations `0x5fe6ec85e7de30da` by [WayBack] 2003 research from Chris Lomont who also found a better 32-bit constant `0x5f375a86`.

Note you need to be careful with boundary values like zero and infinity. This holds for approximations in general: [WayBackperformance – Why is SSE scalar sqrt(x) slower than rsqrt(x) * x? – Stack Overflow

–jeroen

TED Talks on Twitter: “The real reason female entrepreneurs get less funding: @KanzeDana… they get asked different questions than male ones”

Posted by jpluimers on 2018/12/26

Gender gap in startup funding: Dana Kanze and collaborators found a surprising, consistent trend: in meetings with funders, men and women were being asked completely different types of questions.

–jeroen

Time to let go of prejudices: We are all much more the same than we are different.

Posted by jpluimers on 2018/12/25

All of humanity is more alike than different. This holds for generations as well:

the findings suggest meaningful differences among generations do not exist!

Let this be a thought in these days at the end of december: enjoy that we all are so much alike, and help each other succeed.

In an article for Forbes Magazine, we busted the persistent myth that different generations have different needs and desires at work. Back then we were talking about popular-press articles claiming that, for…

–jeroen

Life after Google+ – Lars Fosdal

Posted by jpluimers on 2018/12/24

I need to find a place to host “The Wiert G+ stream, formerly plus.google.com/+JeroenPluimers“.

Maybe i should do something like Lars is setting up:

I am setting up camp at WordPress.com, and importing my old G+ content there, using the Friends+Me Google+ Export tool. Whether this will be my permanent home, still remains to be seen. If you use …

Source: [WayBackLife after Google+ – Lars Fosdal.

The good news: Lars started a series of posts describing the process, so the reminder to myself: archive them in a list:

–jeroen

Top 2000 café – Alle informatie op een rij – NPO Radio 2 – Presentatoren, producers/sidekicks, nieuwslezers en tijden

Posted by jpluimers on 2018/12/16

Een overzicht van alles wat ik via de Top2000 site en Twitter bij elkaar geschraapt heb.

Edit 20181217: blokken begonnen foutief om 07:00. Oeps (: Nu opgelost: ze beginnen om 08:00.

Edit 20181226: Matijn’s quiz datums/tijden onder de tabel gezet

Tijdschema

8:00 9:00 Jan-Willem Roodbeen Jeroen Kijk in de Vegte @JWRoodbeen @jeroenkidv. Carmen Verheul @carmenverheul
9:00 10:00
11:00 12:00
12:00 13:00 Gijs Staverman @GijsStaverman
13:00 14:00 Matijn Nijhuis @matijn
14:00 15:00 Rob Stenders Caroline Brouwer @robstenders @radiocarol
15:00 16:00
16:00 17:00 Ruud de Wild Cielke Sijben Thijs Maalderink @ruuddewild @CielkeSijben @OnwijsThijs
17:00 18:00
18:00 19:00 Wouter van der Goes @woutervdgoes
19:00 20:00
20:00 21:00 Stefan Stasse @stefanstasse Michel Coenen @miesjelc
21:00 22:00
22:00 23:00 Paul Rabbering @paul_rabbering
23:00 24:00
0:00 1:00 Evelien de Bruijn @eveliendebruijn Nachtlezer
1:00 2:00
2:00 3:00 Rick van Velthuysen @rickvanv
3:00 4:00
4:00 5:00 Frank van ’t Hof @frankvanthof
5:00 6:00
7:00 7:00 Annemieke Schollaardt Nathan Tamis @Annemiekeishere @NathanTamis
7:00 8:00 Carmen Verheul @carmenverheul

Matijn’s quiz in de spiegeltent:

• 26 december 10.00 – 10.45 uur (Woensdag)
• 28 december 09.15 – 10.00 uur (Vrijdag)
• 29 december 09.15 – 10.00 uur (Zaterdag)
• 30 december 09.15 – 10.00 uur (Zondag)

Bronnen:

–jeroen