00:06 karolherbst: pmoreau: just send out a new version of my series, in case you still wanna go through it :)
00:07 tobijk: imirkin_: hrmpf, i'm stupid, the locals you were angry about "19816 -> 20152 (1.70%)" are actually contained in the civ6 shader your patches enable to compile on my target (+336)
00:07 imirkin_: oh
00:07 imirkin_: and presumably it also contributed some instructions/gpr's to the cause :)
00:08 tobijk: yep
00:08 imirkin_: we should avoid counting such shaders
00:08 imirkin_: i thought i did =/
00:08 tobijk: so patches are fine :)
00:09 tobijk: imirkin_: R-b for the ones i did not already state i had
00:10 imirkin_: thanks =]
00:12 tobijk: imirkin_: if you push to master, consider pushing this one with it https://patchwork.freedesktop.org/patch/188203/
00:12 tobijk: and feel free to add yourself as a Suggested-by, that one i forgot
00:12 imirkin_: tobijk: yeah, i dunno about that one
00:12 imirkin_: thing is, the float values are pretty convenient to see too
00:13 tobijk: imirkin_: no doubt, having printed both would be the way to go
00:13 karolherbst: imirkin_: not if you parse that tgsi with nouveau_compiler, right?
00:14 imirkin_: karolherbst: but sometimes you parse it with your own eyes ;)
00:14 tobijk: karolherbst: the tgsi gets parsed fine, it is already considered :)
00:14 karolherbst: right....
00:14 karolherbst: tobijk: I meant in the 0.0000 case
00:14 tobijk: ah right
00:15 imirkin_: imo there's a middle-ground
00:15 imirkin_: something that'll work in every case
00:15 imirkin_: which is convert the float to a string
00:15 imirkin_: and then parse the string
00:15 imirkin_: if that's == the original float, show the printed thing
00:15 imirkin_: otherwise show the hex
00:15 karolherbst: that won't work in all cases
00:15 imirkin_: bit==
00:15 imirkin_: :p
00:15 karolherbst: ahhh
00:16 imirkin_: so for the 99.5% case of when it's 1.5, it'll be fine
00:16 tobijk: that could lead to mixed outputs :O
00:16 imirkin_: yeah
00:16 imirkin_: is that bad?
00:16 tobijk: would look strange
00:16 imirkin_: should probably get input from others
00:16 tobijk: i'd prefer both printed, but thats of course preference
00:17 karolherbst: imirkin_: I think hex is best, because sometimes the string representation can become quite long
00:18 imirkin_: that's my point though
00:18 imirkin_: the string printer is pretty limited
00:18 imirkin_: it doesn't ever display crazy shit
00:18 imirkin_: i think it does %.4f or something
00:18 imirkin_: if that's enough - great. otherwise do hex.
00:19 tobijk: IMM[5] FLT32 { 0.0000, 0.0000, 0.0000, 0.0000} <-- with that much space we could print way more
00:20 tobijk: its padded anyway to align with the rest
00:20 nyef``: ... Why print so many zeros to begin with?
00:20 karolherbst: floats can become quite long strings
00:20 imirkin_: it can be 1000000.000
00:20 tobijk: nyef``: the line above is actually: IMM[5] FLT32 {0x00000019, 0x0000000f, 0x00000005, 0x0000001e}
00:22 nyef``: ... Denorms, fairly well down in the noise floor?
00:22 nyef``:never had a very good grasp on floating point decoding.
00:26 imirkin_: floating point has a ton of corner cases
00:27 imirkin_: printing + parsing floating points s.t. printing it ends up as the shortest string s.t. when parsed it will result the same number of bits was a huge thing.
00:27 imirkin_: i've always wanted to ask "add 2 floats" in an interview question, but it's way too hard.
00:28 nyef``: Heh.
00:28 nyef``: (lambda (x y) (declare (float x y)) (+ x y))
00:28 imirkin_: right. :p
00:29 imirkin_: hire *that* guy
00:29 nyef``: Of course, that still has to do type-dispatch and type-contagion, because X and Y can each be either single-float or double-float. Or short-float, or long-float, or...
00:29 imirkin_: oh yeah. long double. forgot about that one.
00:30 nyef``: Some CPUs treat all-mantissa-bits-zero on a NaN as signalling, some of them treat them as non-signalling.
00:31 nyef``: (Wait, "quiet", not "non-signalling".)
00:31 imirkin_: that's a distinction i only recently learned about
00:31 nyef``: Fortunately, it's always the same way within an architecture, but some architectures have it one way and some the other.
00:31 imirkin_: mmmm ... i think IEEE754 specifies it
00:32 imirkin_: there's 1 bit which is the quiet bit
00:32 imirkin_: (the high bit of the mantissa)
00:32 nyef``: Hrm.
00:32 imirkin_: (or the signal bit, i forget which way it goes)
00:32 nyef``: Necessarily the high bit?
00:32 imirkin_: i could be wrong... let's check
00:32 nyef``: I know that it's not specified what the polarity is, just that there has to be a distinction somehow.
00:33 imirkin_: "For NaNs, quiet NaNs and signaling NaNs are distinguished by using the most significant bit of the trailing significand field exclusively (the standard recommends 0 for signaling NaNs, 1 for quiet NaNs, so that a signaling NaNs can be quieted by changing only this bit to 1, while the reverse could yield the encoding of an infinity), and the payload is carried in the remaining bits."
00:33 tobijk: ieee75, long ago, i cant hardly remember the details :>
00:33 imirkin_: admittedly, from wikipedia
00:33 tobijk: *754
00:33 nyef``: "recommends", meaning "have fun, do what you want".
00:34 imirkin_: yeah
00:34 imirkin_: i've already figured out that e.g. nvidia and intel gpu's generate nan's with diff encodings
00:34 imirkin_: nvidia generates 0x7fffffff nans, intel generates 0x7fc00001
00:36 imirkin_: (i mean ... the floating point blending logic generates ... )
00:36 tobijk: does nvidia initialize to 0xf's? and intel to 0x0s or so
00:36 nyef``: "HPPA (and apparently MIPS) have trapping NaNs (SNaNs) with the trapping-nan-bit SET. PPC, SPARC, Alpha, and x86 (and presumably x86-64, ARM, and ARM64) have trapping NaNs (SNaNs) with the trapping bit CLEAR. Note that the given implementation considers infinities to be FLOAT-TRAPPING-NAN-P on most architectures."
09:50 tarragon: nouveau for sparc and alpha??
10:08 _xvilka_: do those have NV cards? O_o
10:20 tarragon: pci I supposed
19:17 karolherbst: aha.. apperantly I can use Nouveau on my GP107 when I load nvidia before that
19:29 karolherbst: guess we just forget to do something within that secboot process
19:30 imirkin_: or the secboot firmware they gave us doesn't do something
19:30 imirkin_: since it's not the same firmware
19:32 karolherbst: might be
19:32 karolherbst: but then it is something which survives reseting those falcons
19:32 karolherbst: hence why I think we can do that in the driver
19:33 nyef``: Can you load their secboot firmware first, wait briefly, then load the given firmware, and see if that clears things up a bit?
19:33 nyef``: (If that works, it indicates a firmware issue, rather than a loader issue.)
19:33 karolherbst: I will trace it and check what happens
19:33 karolherbst: but most likely not today
19:34 nyef``: I'm just brainstorming here, anyway. It's not like I have a Pascal card at the moment.
19:39 imirkin_: nyef``: only voltas? :)
19:45 nyef``: Heh.
19:48 feaneron: what does the lack of signed firmwares affect? clocking, what else?
19:48 imirkin_: acceleration, fan control
19:49 feaneron: hm...
19:54 Mortiarty: does that mean Pascal based cards will never have those features (reclocking/fan control/acceleration) in nouveau? I am asking because I am considering a new PC and that would be a no buy.
19:54 imirkin_: (there are a few different bits of firmware, which control different things)
19:54 imirkin_: Mortiarty: never's a long time
19:55 imirkin_: if you want good open-source support, stick to AMD
19:55 imirkin_: [or intel, but presumably you're looking for something beefier than what they offer]
19:56 imirkin_: nvidia has provided signed gr ctxsw blobs for GP100-GP107 (but not GP108). that allows us to use the 3d engine.
19:57 imirkin_: but support is lackluster in nouveau - I haven't spent a lot of time investigating various issues with it
19:57 Mortiarty: well.. i have a gk106 - played and tried lots of different games and the nouveau driver rocks! The issue with block artifacts is still ongoing ;D imirkin
19:58 imirkin_: the video decoding thing?
19:58 Mortiarty: imirkin_, yeah vdpau
19:58 karolherbst: imirkin_: since pascal also reclocking
19:58 imirkin_: yeah =/
19:58 imirkin_: karolherbst: the question was "clocking, what else"
19:58 karolherbst: ohh right
19:59 karolherbst: Mortiarty: well, people are working on it... that's all what I am able to say
20:00 Mortiarty: karolherbst, on overcoming to sign the firmware?
20:00 imirkin_: yeah, that means that 5 years after the GPUs are released, they'll finally get their act together
20:00 imirkin_: just get AMD and move on with life.
20:00 karolherbst: I was serious about the "I can't tell you more" part
20:01 imirkin_: (getting people to not buy nvidia is really the only thing i can do to put pressure on them... i'm sure it's not a lot, but i do what i can.)
20:02 Mortiarty: imirkin_, I see! Saw your presentation from last year and already thought that is a bad sign
20:02 imirkin_: presumably not my presentation?
20:02 imirkin_: i've never given a presentation [nouveau-related, anyways]
20:03 karolherbst: :3
20:03 Mortiarty: cant be..? at least karolherbst was there and i believe you too
20:03 karolherbst: imirkin_: we druged you and you just talked for 2 hours
20:03 imirkin_: hehe
20:03 imirkin_: would have taken a lot more than 2 hours for the plane ride.
20:03 karolherbst: wasn't cheap, I can tell you that
20:03 karolherbst: but prior the talk we needed something special anyway
20:04 imirkin_: Mortiarty: i've never attended any of the conferences
20:04 imirkin_: they've always been too far away
20:05 karolherbst: imirkin_: even this years xdc?
20:05 imirkin_: when they do one on the US east coast, i'll go
20:05 Mortiarty: yeah this year
20:05 Mortiarty: sorry
20:05 Mortiarty: who is the guy with long hair?
20:05 imirkin_: mupuf
20:05 imirkin_: (probably)
20:05 Mortiarty: ouch! :D
20:06 Mortiarty: ah.. right.. for the next time: when you start your speech... say who you are :D
20:06 karolherbst: nah
20:06 karolherbst: waste of time
20:06 Mortiarty: lol
20:06 Mortiarty: really/
20:06 karolherbst: it was a lightning talk
20:06 karolherbst: they would have cut off our mics :O
20:06 imirkin_: karolherbst: it's a 5-6h flight (direct) JFK <-> SFO
20:07 karolherbst: imirkin_: .....
20:07 karolherbst: like mine was shorter
20:07 imirkin_: (and any other combination of {EWR, LGA, JFK} -> {SFO, SJC, whatever the oakland one is} )
20:07 karolherbst: I think I was in the air for ~11 hours for one direction
20:07 imirkin_: karolherbst: you are a more patient man than i
20:07 karolherbst: I bought internet
20:08 karolherbst: anyhow, I am usually not patient
20:08 imirkin_: i mean - it's a whole thing
20:08 karolherbst: luckily I could power my laptop and work on stuff
20:08 imirkin_: i'd have to find accomodations, etc
20:08 imirkin_: take a bunch of time off from work
20:09 karolherbst: we can find the stuff for you if that is really in the way of coming :D
20:09 imirkin_: "death by a thousand cuts"
20:09 imirkin_: i'll do boston since i can probably find friends to stay with, and it has my favorite indian place.
20:10 karolherbst: k
20:10 imirkin_: and obviously NYC would be easy
20:10 imirkin_: (and/or something train-accessible)
20:12 karolherbst: imirkin_: I think you are the only significant nouveau dev I didn't met yet....
20:12 karolherbst: or wait... did I met mwk?
20:13 mwk: don't think so
20:13 imirkin_: i'm pretty much a hermit, so don't sweat it
20:13 nyef``: imirkin_: Which indian place is that?
20:13 imirkin_: nyef``: India Quality
20:13 karolherbst: mwk: ohh right, but I saw you at some point
20:13 imirkin_: and there's another place the guy opened up in Alston or something
20:13 imirkin_: i forget the name though
20:14 nyef``: Ah. Basementish place near Kenmore?
20:14 imirkin_: yep
20:14 nyef``: I don't think I've ever been in there.
20:14 imirkin_: it's really good. and affordable for college students :)
20:15 mwk: karolherbst: where?
20:15 imirkin_: (although an indian friend of mine said he didn't like it. my reply back was that he understood nothing of indian food ;) )
20:15 nyef``: I like the Kashmir that's three blocks away on Newbury, and The Maharaja in the Harvard Square area.
20:16 imirkin_: don't think i ever went to those
20:16 karolherbst: mwk: dunno. I just have a vague idea about how you look like
20:24 mupuf: Mortiarty: that is a fair request to make (saying one's name before talking) :D
20:24 mupuf: always makes me feel like my name is not important, but it helps in these situations
20:25 imirkin_: mupuf is one of the few in the gfx world who's met me in person
20:26 Mortiarty: mupuf, yeah - and its polite and gives you a start - in nearly every speech I see they do it.
20:29 mupuf: Mortiarty: wow, we botched it :D
20:29 mupuf: no names on the slides, no names
20:29 mupuf: no introduction*
20:30 mupuf: :D sorry about that!
20:30 Mortiarty: so I tried to deduce from what you presented who you are :D
20:33 imirkin_: it was a good guess
20:34 Mortiarty: haha
20:35 karolherbst: mupuf: that bad?.... I thought we put our names on the slides at least...
20:36 Mortiarty: i think i saw some names
20:36 Mortiarty: but then you were at least 3
20:37 mupuf: Mortiarty: that's XDC 2016
20:37 Mortiarty: Dont hide! Say your name and what you do when you start! You can be proud of that thingy
20:37 Mortiarty: mupuf, i wasnt sure
20:38 karolherbst: mupuf: next year we have to try to get skeggsb on the stage :D
20:38 Mortiarty: but in that talk you mentioned signed firmware and some 10k
20:38 Mortiarty: card
20:38 mupuf: Mortiarty: that was XDC2016
20:38 mupuf: pretty sure we had our names there
20:40 Mortiarty: could be - but i could only get karolherbst face to his name right :D
20:40 mupuf: sooo, indeed!
20:40 mupuf: we did not introduce each others
20:40 mupuf: other*
20:40 mupuf: bad us!
20:40 mupuf: thx for telling us :)
20:41 Mortiarty: sure - no problem - glad to help
20:41 mupuf: funny how we expect stuff to just have happened, but actually it did not
20:42 mupuf: but normally, the host is introducing people
20:42 mupuf: in 2016... I was the host
20:42 Mortiarty: ;D
20:42 mupuf: oh well
20:43 karolherbst: mupuf: or we just do the same stuff those "idea groups" do like anonymous, an we are all just "nouveau", and use crazy hacker names which are different every presentation
20:43 karolherbst: or just pay random guys on presenting for us
20:49 mupuf: lol