00:00 karolherbst: yeah
00:00 karolherbst: 3 rooms and I have only one roommate
00:00 hakzsam: nice place
00:00 karolherbst: living room has quite some place (~ 22 m²)
00:00 karolherbst: *space
00:00 hakzsam: I think you forgot mupuf :)
00:00 karolherbst: I already told him
00:00 hakzsam: ok
00:01 mupuf: karolherbst: congrats on your new place!
00:01 karolherbst: :D
00:01 karolherbst: thanks
00:01 karolherbst: we get the keys on the 13th this month
00:03 karolherbst: and we get even a 400MBit internet connection (hopefully) with 25Mbit upload
00:03 karolherbst: so I guess I could also create a reator or something
00:03 karolherbst: actually I plan this anyway
00:04 hakzsam: reator2 :)
00:04 karolherbst: mupuf: you need to tell/show me how I have to do this by the way then ;)
00:04 karolherbst: I plan to do it around june or earlier
00:04 mupuf: karolherbst: yep!
00:06 mupuf: I started working today on controlling multiple machines running ezbench
00:06 karolherbst: :)
00:06 karolherbst: awesome
00:06 karolherbst: maybe I build a PCIe multiplexer with a controller to switch GPUs on the fly or so
00:06 mupuf: that will include ways to turn on machines as needed
00:07 mupuf: karolherbst: no way you can do that...
00:07 karolherbst: why not?
00:07 mupuf: because lanes have to be the exact same length and impedence
00:07 mupuf: and blabla öD
00:07 karolherbst: mhhhh
00:07 karolherbst: okay, impedence might bceome a problem
00:07 karolherbst: *become
00:08 mupuf: yes, it would ö=
00:08 mupuf: sorry, finnish layout, back to us
00:08 karolherbst: your ö is on an odd key
00:08 karolherbst: ohh wait
00:09 mupuf: hehe
00:09 karolherbst: nono, it's fine :D
00:09 mupuf: but yeah, I have 10 circuits for wtrpm on the way to finland
00:10 mupuf: so, if they do work, I will actually make more of them (or even ask the chineese to populate the board for me)
00:10 mupuf: I may end up using the same system at intel, for developer machines
00:11 karolherbst: maybe I just buy a MB with 4 slots... makes more sense than a multiplexer
00:11 mupuf: yes, it does
00:11 mupuf: and better buy more machines than one very expensive one
00:11 mupuf: more machines == more testing done in //
00:12 karolherbst: we hardly need 2 reators
00:12 karolherbst: :D
00:12 mupuf: yes we do, mister
00:12 karolherbst: it's very rare we really need both at the same time
00:12 karolherbst: yes it happens, but having two machines is enough for now
00:12 mupuf: true, but what about automated testing?
00:12 karolherbst: mhhhh
00:13 karolherbst: more slots make more sense on a testing rig.... mhhh
00:13 mupuf: well, not really
00:13 karolherbst: one of each family
00:13 mupuf: if it takes 12 hours to run all the tests, then the machine is out for 2 days
00:13 karolherbst: and then we can automatically test all
00:13 karolherbst: then we need a faster machine
00:14 karolherbst: 170€ for a board with 4x pcie x16?
00:14 mupuf: well, you can get one expensive machine, or 4 scrap ones ;)
00:14 karolherbst: 3 slots accessable with dual lane cards
00:15 karolherbst: mhhh
00:15 karolherbst: true
00:15 mupuf: I have the perfect cabinet to put up to 6 machines
00:15 mupuf: or more actually, if needed. But let's start small
00:16 mupuf: I already have 2 machines to hook up, the nv86 and the tk1
00:16 mupuf: when this works, I will just ask nvidia for the tx1 and add more testing
00:16 mupuf: err, hw
00:17 mupuf: the only GPUs that will be hard to test will be the fast ones... the 690 and the titan
00:17 mupuf: because they will need a beefy CPU
00:18 karolherbst: yeah
00:20 karolherbst: meh... feral didn't fix their libcurl issues yet
00:23 karolherbst: ohhh graphical issues with hitman :)
00:23 karolherbst: nice
00:23 karolherbst: and gpu crash :D
00:24 karolherbst: https://gist.github.com/karolherbst/f2773b1ac7fdd70b6550404c12b5381b
00:26 imirkin: hmmm... OOR_ADDR shouldn't be fatal
00:26 imirkin: in some situations it can even be expected
00:26 karolherbst: okay
00:26 karolherbst: I didn't update my system mesa as well
00:27 karolherbst: so your fixes aren't there yet
00:27 imirkin: oh
00:27 imirkin: which ones?
00:27 karolherbst: currently installing
00:27 karolherbst: the hitman ones
00:27 imirkin: the hitman-specific ones?
00:27 imirkin: probably want those ;)
00:27 karolherbst: yeah
00:28 imirkin: note that this patch still hasn't been pushed - st/mesa: set result writemask based on ir type
00:28 karolherbst: yeah, but that only hit an assert
00:29 karolherbst: but there are enough issues to work with :)
00:31 karolherbst: crap :D the menu is so broken, I can't select the benchmark
00:31 karolherbst: at least it doesn't crash
00:33 karolherbst: anyway, will look into it in more depth over the week
00:34 imirkin: ok cool. make traces.
00:34 imirkin: gtg
01:06 tarragon: how's wine with nouveau?
01:07 tarragon: so far success with 'winecfg'
01:09 nyef`: Hrm... HDMI and DPort output at the same time might mess up HDA?
01:10 nyef`: ... No chance of me testing that properly until next week, but I may be able to connect to both HDMI inputs on my TV here.
01:11 Lyude: imirkin_: I -think- I've added all the stuff I need in mesa's core and gallium (gallium didn't seem to need much), would it be a good idea for me to try to implement this in the softpipe driver first? or just go straight to nouveau
01:11 nyef`: Or not, looks like the mini-DP to HDMI adaptor is at home.
01:13 mooch2: so, update on my nvidia emulation
01:14 mooch2: one specific user of 86box has managed to get the nvidia riva 128 drivers installed
01:14 mooch2: SOMEHOW
01:14 mooch2: i haven't been able to reproduce that, but still
01:15 imirkin: Lyude: well, the downside of doing it in softpipe is that you'd have to implement it
01:15 Lyude: hehe, I figured you'd say that
01:15 imirkin: for nvidia, you just write a 1 or a 0 to a register, and presto-changeo -- it works
01:16 imirkin: i'm fine either way, as you can imagine.
01:16 Lyude: it might actually be more useful in that case for me to implement it in nvidia first and see what happens from there, so I have a working reference to go off of
01:18 Lyude: neat, didn't realize it'd be this easy :)
01:19 imirkin: well, ideally you would have written piglit tests :p
01:20 imirkin: should be easy to hook it up in shader_runner if you don't want to write real code
01:20 Lyude: i was already planning on doing that
01:20 Lyude: also, what is shader_runner?
01:20 imirkin: [i highly recommend that path btw... writing real code is for suckers]
01:20 imirkin: find piglit -name shader_runner.c
01:21 imirkin: basically a thing that processes shader_test files which are effectively little GL scripts
01:33 Horizon_Brave: Hi everyone
01:34 dboyan_: imirkin: What's the difference between LIMM and I3BIMM?
01:35 dboyan_: I'm deciding which to use for F2F.F16.F16
01:35 Horizon_Brave: sweet...I'm not the only one who comes with questions...lol
01:35 dboyan_: well, 16 bit value
01:35 dboyan_: Horizon_Brave: yeah ;)
01:36 Horizon_Brave: dboyan_: lol...I always feel like I ask more than I give though :\
01:44 imirkin: dboyan_: floating point imms are the top 20 (or 19) bits. integer imms are the lower 20 bits.
01:45 imirkin: dboyan_: i dunno what to use for F2F.F16.F16 - you'll have to play with the decoding
01:45 imirkin: in nvdisasm
01:45 Horizon_Brave: Rutgers... Jvesely, which rutgers campus are you at?
01:55 dboyan_: imirkin: I3BIMM for f16 immed value, because they only has 16 bits
01:56 dboyan_: *have 16 bits
01:57 dboyan_: well, talking on irc reveals that my english is quite broken...
02:01 Horizon_Brave: lol, don't worry my English breaks on irc AND in normal speech :P
02:09 Horizon_Brave: Hey, if the Nouveau team decides to drop support/code for an older nvidia card, in a newer release of nouveau...and a user has that card, and the decision won't allow him to use it anymore, are options availble to "add " the removed code back into the nouveau package?
02:09 mupuf: Jetson TX2... how to screw up a logical naming convention...
02:09 mupuf: I guess TP1 was a bad name
02:09 mupuf: were they afraid of people using toilet paper on their product?
02:13 gnarface: have any cards actually been removed from nouveau support? i thought the goal was to support all of them.
02:14 gnarface: (pending finding hardware to actually test with)
02:14 dboyan_: well, why did they come up with TX1 in the first place instead of TM1?
02:15 Horizon_Brave: gnarface: really? wouldn't that eventually result in a massively bloated package eventually? if it pulled in every single driver needed to support every card that nvidia makes?
02:16 Horizon_Brave: gnarface: I'd think eventually it would just outgrow a practical sized package?
02:17 gnarface: oh, i don't actually know for sure. in theory, yes. in theory the sun will run out of fuel and implode eventually too.
02:17 gnarface: in practice, material goods don't tend to last that long
02:18 gnarface: usually support gets removed when people stop complaining about it (evidencing the hardware in the wild has all died)
02:18 Satchelboi: Hey, is anyone working on the nv_conservative_raster for gm200 currently?
02:18 airlied: open source driver don't generally drop support, they just rot
02:19 gnarface: also, probably they could keep adding new nvidia card support to nouveau for the next thousand years anyway before the file size of the binary itself is any sort of reasonable concern
02:19 Lyude: imirkin: see Satchelboi's message ^
02:19 Lyude: 1
02:19 Lyude: wrong window, whoops
02:21 airlied: nouveau also isn't a single package
02:22 Lyude: Horizon_Brave: as well a lot of drivers for different generations, almost all of them really, usually share code with other generations
02:23 Horizon_Brave: right..all valid points..
02:24 Horizon_Brave: so with the facts that most drivers are compiled using shared libraries...and are generally similar to each other, and that binaries are very small in file size, the developers can generally add to the nouveau package and not really worry about the size becoming unweildy...
02:25 airlied: Horizon_Brave: you might want to look at how nouveau is distributed
02:26 gnarface: Horizon_Brave: nvidia only rolls off support for their old cards to force you to buy new ones
02:26 airlied: well it decreasse their support costs and QA costs
02:27 airlied: Horizon_Brave: most of nouveau is in the Linux kernel, and the mesa dirvers
02:27 airlied: the X nouveau package isn't even necessary for newer cards
02:27 Lyude: also, looking at adding the register change to rasterization in nvc0_state.c to add support for NV_fill_rectangle and I'm a little confused: what exactly do SB_BEGIN_3D, SB_DATA, and SB_IMMED_3D do? I assume they're some sort of commands we send to the GPU but what is the difference between all of them
02:28 Horizon_Brave: speaking of which....
02:29 airlied: Lyude: SB_BEGIN_3D starts a new command with a specified number of dwords, SB_DATA contains the dwords
02:29 airlied: SB_IMMED_3D does a command that takes one 32-bit value
02:29 Horizon_Brave: what kind of hoops does the nouveau team go through to get accepted into the official linux kernel? Was the nouveau team approached by the kernel um... "developers?"
02:29 Horizon_Brave: or does the nouveau team have to present their code and request to be included in the linux pristine kernel?
02:30 gnarface:assumed they were already kernel developers when they founded the driver
02:30 gnarface: there was an older "nv" driver already there it replaced
02:30 imirkin: Horizon_Brave: no support for any GPUs have ever been dropped from nouveau
02:30 imirkin: airlied: Lyude: IMMED_3D actually only lets you have 12 bits iirc of value. if you want more bits, then you can't use it.
02:31 airlied: imirkin: ah interesting
02:31 airlied: Horizon_Brave: they are just like any kernel driver, nothing special
02:31 Lyude: it should be noted a good number of widely used drivers in the kernel are reverse engineered, or started off as such
02:32 Lyude: imirkin: alrighr
02:35 imirkin: airlied: there are asserts in at least IMMED_NVC0 to complain... or i think there are.
02:35 imirkin: airlied: since it's a 32-bit command word, kinda hard to store 32 bits worth of value :)
02:36 dboyan_: imirkin: i'm a bit unsure about cvtf2isrc equivalent in tabi. Shall I create a new table for it? How should they be named?
02:37 Echelon9: nice to see the TX2 (Pascal) announced.
02:37 Echelon9: Although surprising the Jetson developer series remain so expensive when you can get the same chip, storage etc in a Shield TV with unlocked bootloader
02:37 imirkin: Lyude: here is a description of how FIFO command processing works: http://envytools.readthedocs.io/en/latest/hw/fifo/dma-pusher.html#the-commands-pre-gf100-format
02:38 imirkin: Lyude: the immediate commands were added in GF100, so you have to scroll down a bit to see them
02:38 gnarface: Echelon9: wait, the Shield TV doesn't have a locked bootloader????
02:38 gnarface:ponders schemes
02:38 Echelon9: it does not. I've booted my own compiled 3.whatever series kernel fork that nvidia provides; and I'm trying to get an upstream 4.10 kernel booting too
02:39 imirkin: dboyan_: not sure... i suspect i'd have to investigate it as much as you would to figure out the answer, so you can go ahead and propose something yourself. or just leave those out if you don't feel like dealing with them.
02:39 gnarface: neat!!
02:39 Lyude: imirkin: thanks! also, Satchelboi (friend of mine jfyi, trying to get them into graphics too :) was wondering if they could take https://trello.com/c/Zjm7vs5h/149-gm200-nv-conservative-raster
02:39 Lyude: or rather, just make sure no one else is working on it
02:39 imirkin: Satchelboi: i don't think anyone's working on NV_conservative_raster.
02:39 Lyude: I remember what you said about people coming and going ;)
02:40 imirkin: that they do. iirc Satchelboi was here earlier too (at your behest)
02:40 Lyude: yeah, they're hoping to do gsoc
02:40 Satchelboi: Hopefully I'll be able to make some progress with this one as a starter project.
02:41 imirkin: sounds like a fine starter project. assuming it's a relatively trivial implementation on gpu, should take no more than a couple days to figure it all out (that's counting figuring out tools, how nvidia works, etc)
02:41 Echelon9: skeggsb: For the new mem types in the nouvea kernel, I'm going to just submit a patch for detecting GDDR5X. HBM2 can wait
02:42 Satchelboi: Then I best start working towards figuring out tool and driver functions tonight so I can progress on the actual implementation.
02:43 imirkin: Satchelboi: as you can see in the trello card, someone already did a bit of playing with that ext. however it was incomplete - didn't figure out the subpixel bits of the ext.
02:43 imirkin: so not AS easy as the one Lyude is working on, but should be close
02:44 Satchelboi: I'll pick up from that point and see what I can do then.
02:44 imirkin: so you need a setup where you can trace the nvidia driver
02:44 imirkin: oh, and in case it's not obvious, you also need a GM20x gpu :)
02:45 Satchelboi: I have access to a gm20x card, so that won't be an issue luckily.
02:46 imirkin: do you have a grasp of how rasterization works?
02:46 Lyude: yeah, I'll be letting them ssh into the machines i've got here
02:46 imirkin: (if you say "yes", i'll know you're lying...)
02:47 Satchelboi: I just read a general overview on how they work. After that, it's a work in progress.
02:47 Horizon_Brave: what are you trying to do Satchelboi? if you don't mind me asking?
02:48 imirkin: Satchelboi: so the idea of conservative rasterization is that a pixel is lit up if any part of it overlaps with the triangle, rather than just if any of the samples are covered
02:49 Satchelboi: Horizon_Brave: I'm looking into working on the nv_conservative_raster tag, though I'm still trying to figure out exactly what it's asking to be done.
02:49 imirkin: having a solid grasp of all that stuff should be immensely helpful when writing piglit tests
02:49 imirkin: my guess is that you'll think you get it, write the tests, they won't work, and you'll adjust your understanding until they do work :)
02:50 Satchelboi: If that's what it takes to understand it well, then I'm happy to give it a shot.
02:50 Horizon_Brave: I really...should have stuck with CS as my major... I went into IT instead... you guys seriously speak a different language than us lol...
02:50 imirkin: coming up with good ways to test rasterization is extremely hard as well
02:50 imirkin: Horizon_Brave: lots of graphics-specific talk in here too, as you might imagine.
02:51 imirkin: Satchelboi: you could look at the INTEL_conservative_raster tests for inspiration... hopefully there are some
02:51 Horizon_Brave: heh, oh yes, If I hear the word raster one more time.... :P
02:51 Satchelboi: No better time to starting learning those terms then!
02:51 Satchelboi: imirkin: I'll take a look at those first
04:02 Lyude: For a patch series, if I need some registers in src/gallium/drivers/nouveau/nvc0/nvc0_3d.xml.h that aren't there right now because the files haven't been regenerated in a while, should I go about regenerating the whole thing?
04:49 Echelon9: Can I interest anyone in a quick envytools documentation PR review?
04:49 Echelon9: https://github.com/envytools/envytools/pull/68
05:08 mattst88: Lyude: no 1.0.14 tarball?
10:18 hakzsam: Lyude: my advice: you are going to have serious headaches if you try to regenerate the whole file (lot of things have been renamed, etc). You should just put them directly in the header :)
14:05 dboyan: imirkin_: I found a case in my rsq where it had 3ulp difference with cpu
14:18 dboyan: well, I guess I've found the problem.
14:21 dboyan: I might still need normalization in rsq, seems that error accumulates on some small normalized values
14:25 imirkin_: Lyude: yeah, i applied some sed commands which aren't anywhere last time i generated those files. just add it in by hand and make it look reasonably like the other lines.
14:28 imirkin_: dboyan: 3 ULP is still pretty good... might be enough for RSQ. let me check.
14:28 imirkin_: dboyan: also, for that value, can you check the "real" answer, since cpu might also be off
14:28 imirkin_: i don't think that CPU has a <= 1 ULP guarantee for those
14:29 imirkin_: dboyan: inversesqrt <= 2 ULP
14:29 imirkin_: dboyan: btw, next is sqrt :) that one should be ... fun.
14:29 imirkin_: [since 1/rsq doesn't have nearly enough precision]
14:30 dboyan: imirkin_: The problematic number has 1 in exponent, when i changed it to 3, it suddenly became saner
14:30 imirkin_: i thought you did exponent and mantissa separately
14:30 imirkin_: oh, but you're using rsq64h. nevermind
14:30 imirkin_: iirc the blob code does some amount of exponent normalization (or de-normalization?) before feeding the data to rsq64h
14:31 dboyan: they did iirc, and in a rather sophisticated way
14:31 imirkin_: perhaps they knew what they were doing? :)
14:32 dboyan: i know what they are doing, but it shouldn't be that twisted
14:32 imirkin_: heh. "should" and "floating point" often go counter to each other
14:34 dboyan: imirkin_: btw, do you think can unify the various f2f forms of cvt in envydis?
14:34 dboyan: The big problem is about rounding flags
14:35 imirkin_: i don't really see how you'd do it...
14:35 imirkin_: you could make a tabcvt or something which has the different things
14:35 imirkin_: but that just shifts the lines around a bit...
14:35 dboyan: yeah
14:35 imirkin_: doesn't end up in fewer lines :)
14:35 dboyan: okay, then I'd rather keep it as it is
14:35 dboyan: there are some missing flags though
14:36 imirkin_: yeah, the gk110 isa spec is the least "done" one
14:36 imirkin_: it was created at a time before nvdisasm was known/used
14:36 imirkin_: so it was purely through ptxgen
14:38 dboyan: I guess it was pretty hard work then
14:38 imirkin_: before my time :)
14:39 imirkin_: (or at least before i was looking at post-nv50 stuff.
15:03 dboyan: imirkin_: I guess i'm just too lazy, but I think applying the same handling of denorm to values with 1 (or 2) in their exponent should fix the problem
15:03 imirkin_: dboyan: makes sense.
15:03 dboyan: There was a * 0.5 at the beginning, and those with 1 in exponent will lose precision
15:03 imirkin_: since sqrt(exponent = 1) would end up as a denorm
15:04 dboyan: the * 0.5 thing is at the beginning newton-raphson step
15:04 dboyan: so no matter how many rounds, it gets the same error
15:05 imirkin_: silly question...
15:05 imirkin_: can you check the REAL mathematical answer to the question you're asking
15:05 imirkin_: and see how that corresponds with your value?
15:05 imirkin_: the cpu could be off :)
15:06 dboyan: are there things like *precise* implementation of floating point arithmatics? I wonder too
15:07 imirkin_: no
15:07 imirkin_: but you can use a non-floating point impl to compute the value
15:07 imirkin_: and then convert it back into floating point
15:10 dboyan: Maybe not that easy either. I guess reciprocal and sqrt are not trivial to implement
15:11 imirkin_: no, but people have implemented them
15:11 imirkin_: e.g. BigDecimal in java
15:12 dboyan: hmm, do you think I should check against them before I roll out another round of patches?
15:12 imirkin_: i'd check some of those weird ones
15:12 imirkin_: not all of them
15:13 imirkin_: btw, you can access that stuff easily with jython
15:13 imirkin_: ok, i lied, BigDecimal doesn't do it. but there are libs.
15:15 imirkin_: dboyan: http://www.leda-tutorial.org/en/discussion/ch06s03.html
15:15 imirkin_: apparently LEDA is such a library that has "bigfloat"
15:16 imirkin_: Source Code is not available for free, but can be purchased from us
15:16 imirkin_: nevermind.
15:17 imirkin_: probably something written in fortran has it :) they solved a LOT of nasty problems in fortran
15:17 imirkin_: dboyan: but maybe you can use e.g. wolframalpha.com for it
15:20 dboyan: well, that there are still many 2ulp differences, but 3ulp ones seems gone
15:20 dboyan: I'll check and see
15:21 dboyan: I ran at least 100M tests, none exceeding 2ulp
15:24 imirkin_: ok
15:27 dboyan: rcp seems rather precise though, none of the error is greater than 1ulp as of now
15:28 imirkin_: oh cool
15:42 karolherbst: imirkin_: I can check something with BigDecimal if you want to :D
15:43 imirkin_: karolherbst: it doesn't have rsq =/
15:43 dboyan: imirkin_, I found mpfr
15:44 karolherbst: imirkin_: http://stackoverflow.com/a/17306433
15:45 karolherbst: ohh wait
15:45 karolherbst: you wanted rsqt
15:45 imirkin_: yeah, and *precise*, not some random algo some guy copied from some place and put up on stackoverflow
15:47 karolherbst: https://arxiv.org/abs/0908.3030
15:48 karolherbst: maybe this helps
15:48 imirkin_: mpfr should be fine
15:48 karolherbst: true
15:49 dboyan: my current plan is to validate the result with mpfr when there is difference greater than 1ulp
15:50 dboyan: will implement that tomorrow
15:53 imirkin_: dboyan: sounds good. i'll be curious to know how the CPU impl fares :)
16:05 imirkin_: RSpliet: getting info on what you're actually seeing in demmt would be great
16:05 imirkin_: and/or the trace itself
16:05 imirkin_: from a brief look, it should all be hooked up
16:07 imirkin_: RSpliet: perhaps it uploads the header differently now, in a way that demmt doesn't pick up
17:42 imirkin_: Lyude: can you look into the tar ball upload thing? did you not use the release script?
17:42 mattst88: so... no 1.0.14 tarball?
17:42 mattst88: wow, what timing
17:42 imirkin_: heh
17:45 imirkin_: or perhaps Lyude is not a member of the x group... that was my issue when i released 1.0.13
17:45 imirkin_: although i've since been added, i'm told
17:52 karolherbst: mupuf: ohh no, it is getting worse :O I just did a "x == NULL" check in java :(
17:52 mupuf: good good! Mouahahah
17:52 karolherbst: somtimes I even od if(x) :D and then I wonder why that doesn't work
17:53 imirkin_: karolherbst: i type "bool" a lot
17:53 mupuf: hehe
17:53 karolherbst: mhh
17:53 karolherbst: for some reasons I always use boolean
18:08 joekamprad: WTH: nvidia-modeset: ERROR: GPU:0: Idling display engine timed out
20:27 karolherbst: imirkin_: time for some hitman debugging today?
20:31 karolherbst: \o/
20:31 karolherbst: no crash within the benchmark
20:48 karolherbst: mupuf: mhhh, I did something wrong regarding runpm... I triggered a dead lock somehow
20:57 karolherbst1: and nouveau is gpu core bottlenecked
20:57 karolherbst1: most likely
20:58 karolherbst1: memory load is somewhere around 5%
21:10 Jonimus: I just purchased a used laptop with a K3000M (GK104) chip in it, how is support for the chip progressing and how useable is it for a laptop with regards to things like powermanagment for battery life reasons?
21:37 karolherbst: hum... the trace looks the same on intel/nouveau/nvidia and has the same issue
21:37 karolherbst: odd
21:39 karolherbst: Jonimus: is it a single GPU setup?
21:39 Jonimus: karolherbst: no optimus.
21:39 karolherbst: Jonimus: k
21:39 karolherbst: Jonimus: kepler GPUs reclock without many issues on linux 4.10
21:40 Jonimus: Its a Dell Preciosion M6700, more maybe is the M6800, I don't have it right in front of me at this second.
21:40 karolherbst: and the GPU is usually off on an optimus setup if not in use
21:40 Jonimus: Ok cool, I was able to do the DRI_PRIME=1 glxinfo and get the expected Nouveau output so that part appeared to work
21:41 karolherbst: nice
21:41 karolherbst: be aware, that you can't reclock through the pstate file as long as the GPU is turned off
21:41 karolherbst: so best is to just reclock if you run something on it
21:41 karolherbst: patches to fix this are in work
21:42 imirkin_: karolherbst: so hitman works or what's the deal?
21:42 imirkin_: or just doesn't cras?
21:42 karolherbst: it doesn't crash
21:42 imirkin_: well, i guess that's a start
21:42 imirkin_: almost there ;)
21:42 Jonimus: karolherbst: is there any auto reclocking or is that pretty much all manual unless I switch to the nvidia driver?
21:42 karolherbst: manual
21:43 Jonimus: It should default to lowest state on boot at least I assume?
21:43 karolherbst: no
21:43 karolherbst: it defaults to the default state
21:43 karolherbst: which means: no touchy
21:44 karolherbst: imirkin_: you know what is odd? I see exactly the same issues on nvidia
21:44 karolherbst: so it is an engine bug as it seems
21:44 karolherbst: or I do something terribly wrong
21:45 imirkin_: =]
21:45 karolherbst: wanna take a look?
21:56 imirkin_: not sure what i can do...
21:57 karolherbst: mhh, there are some "37223: message: major shader compiler issue 3: 0:191(23): warning: `clipDistanceTemp0' used uninitialized" prints
21:57 karolherbst: well, maybe we just miss an extension
21:57 imirkin_: those warnings tend to be bogus.
21:57 karolherbst: and otherwise the game does silly things
21:58 karolherbst: maybe I should just export 4.5
21:58 imirkin_: the used uninitialized thing doesn't recognize inout, iirc...
21:58 imirkin_: clip distances are available starting GL 3.0
21:58 karolherbst: yeah, but you know. They use 4.5 features
21:58 karolherbst: maybe they just messed up
21:58 imirkin_: maybe
21:58 imirkin_: how would that affect nvidia though?
21:59 imirkin_: perhaps it cached something it shouldn't have, incorrectly?
21:59 karolherbst: I replayed the apitrace on nvidia
21:59 imirkin_: oh.
21:59 karolherbst: ...
21:59 karolherbst: issue gone with 4.5
21:59 karolherbst: ohh wait
21:59 karolherbst: it's different
22:00 karolherbst: no :( it's still thre
22:00 karolherbst: sad
22:02 karolherbst: okay, running the game with nvidia is fine
22:02 karolherbst: so it's some odd path taking thing
22:02 karolherbst: any idea how to debug this?
22:02 karolherbst: maybe by using the nvidia GL_VENDOR?
22:03 imirkin_: perhaps
22:04 karolherbst: trace is here: https://drive.google.com/drive/folders/0B78S7GSrzebIemFQZlJyaExySlU
22:04 karolherbst: HitmanPro.trace
22:15 karolherbst: imirkin_: before I annoy feral with super vague issues, we should try to figure out what they do wrong or so. Might be better this way
22:17 imirkin_: replaying on intel...
22:17 karolherbst: same
22:18 imirkin_: it's slow.
22:18 karolherbst: okay, faking the GL vendor didn't help
22:18 karolherbst: I think I should make a trace on nvidia as well
22:18 karolherbst: maybe there will be an obvious difference
22:18 imirkin_: unfortunately that'll use bindless, etc. (probably.)
22:18 karolherbst: uhh
22:19 karolherbst: makes sense
22:19 imirkin_: should write a wrapper that removes exts from their thing
22:19 karolherbst: yeah
22:19 karolherbst: ohh wait
22:19 karolherbst: I use primusrun :D
22:19 karolherbst: I can just hack it in there
22:19 imirkin_: does it render properly when run on nvidia?
22:19 karolherbst: yes
22:20 imirkin_: i assume that triangle towards the end shouldn't be there?
22:20 karolherbst: exactly
22:20 karolherbst: and there should be a menu
22:21 karolherbst: and the triangles inside the bar code loading animations are also wrong
22:21 imirkin_: does it work on intel?
22:22 karolherbst: mhh wait, faking the vendor... I did wrong
22:22 karolherbst: hum
22:22 karolherbst: okay
22:22 karolherbst: :D
22:22 karolherbst: something changed
22:22 karolherbst: Mesa: User error: GL_INVALID_OPERATION in glVertexAttribPointer(no array object bound)
22:23 karolherbst: GL ERROR :GL_INVALID_OPERATION : glFramebufferTexture2D
22:26 karolherbst: mhhh
22:26 karolherbst: I don't have your one tex patch