egg|nomz|egg changed the topic of #kspacademia to: https://gist.github.com/pdn4kd/164b9b85435d87afbec0c3a7e69d3e6d | Dogs are cats. Spiders are cat interferometers. | Космизм сегодня! | Document well, for tomorrow you may get mauled by a ネコバス. | <UmbralRaptor> egg|nomz|egg: generally if your eyes are dewing over, that's not the weather. | <ferram4> I shall beat my problems to death with an engineer.
e_14159 has joined #kspacademia
e_14159_ has quit [Ping timeout: 202 seconds]
egg has quit [Read error: Connection reset by peer]
<kmath>
<cosmos4u> "Trajectories of the Earth System in the Anthropocene" - someone just sent me a link to an open-access version of t… https://t.co/SAayEODjDm
<egg>
meow
<UmbralRaptop>
!pet egg
* Qboid
pets egg
* egg
meows at Qboid
tawny has joined #kspacademia
BPlayer has joined #kspacademia
APlayer has quit [Ping timeout: 182 seconds]
BPlayer is now known as APlayer
<egg>
!pet whitequark and коте
* Qboid
pets whitequark and коте
BPlayer has joined #kspacademia
APlayer has quit [Ping timeout: 182 seconds]
<bofh>
!pet egg
* Qboid
pets egg
APlayer has joined #kspacademia
<egg>
bofh: what's the difference between xorpd and xorps Ꙩ_ꙩ
<bofh>
egg: I'm not sure if one was ever intended, but the answer is "literally none" other than {and,andn,or,xor}pd require SSE2 and are one byte longer instruction-wise compared to {and,andn,or,xor}ps, so just use xorps all the time.
pthag has quit [Remote host closed the connection]
<egg>
bofh: wat
<bofh>
egg: they perform the same operation
<egg>
yes but why are they
<bofh>
I have no clue, I think Intel just wanted completeness or... I honestly have no fucking clue.
__awang__ has quit [Ping timeout: 194 seconds]
<bofh>
like {and,andn,or,xor}pd are literally just DATA-PREFIX {and,andn,or,xor}ps (i.e. 0x66 0x0f 0x57 0xc0 vs. 0x0f 0x57 0xc0), so it's a fairly natural opcode extension... and based on how the instructions work I literally just think the instruction decoder just ignores the DATA-PREFIX and otherwise they are treated the same way once they hit Port 5 or w/e.
<egg>
!wpn bofh
* Qboid
gives bofh a boy/SPANG hybrid
<bofh>
!wpn egg
* Qboid
gives egg a flammable explicit Brand New Photoneutronic Engine
<kmath>
<JoAnnaScience> can we please have a #DanceInTheField thread? https://t.co/rxr4cHTXp6
BPlayer has joined #kspacademia
<bofh>
UmbralRaptop: YES PLEASE
APlayer has quit [Ping timeout: 182 seconds]
<egg>
bofh: also currently figuring out how to mix sin and cos with eggstremely low latency to get a number of cycles that's not biased for a particular quadrant to induce a data dependency for a latency benchmark
<egg>
bofh: I think (cos bitand 2 ** 52 - 1) bitxor sin works
<egg>
(cos 2πж bitand 2 ** 52 - 1) bitxor sin 2πж iterated (starting with ж = π)
<egg>
well, a histogram thereof, mod 1 offset 1/2, for various values of 52
<bofh>
egg: uhhm
<bofh>
whe
<bofh>
y
<egg>
bofh: ?
<bofh>
why is a quadrant bias here bad?
<egg>
because branch prediction
<bofh>
if you're computing sin *and* cos at once, then there's not really any branching involved over the quadrants, at least it can be done entirely branchlessly via masks and conditional mov's.
<bofh>
that being said, is this so far into the hot path as to matter? :P
<egg>
dunno, the code that uses it isn't there yet
<Qboid>
[#1889] title: Improve the latency benchmark | Compute (cos bitand 2 ** 52 - 1) bitxor sin to induce a data dependency without reading from precomputed random inputs or doing a couple of floating-point additions.... | https://github.com/mockingbirdnest/principia/issues/1889