ChanServ changed the topic of #lima to: Development channel for open source lima driver for ARM Mali4** GPUs - Kernel has landed in mainline, userspace driver is part of mesa - Logs at https://people.freedesktop.org/~cbrill/dri-log/index.php?channel=lima and https://freenode.irclog.whitequark.org/lima - Contact ARM for binary driver support!
_whitelogger has joined #lima
adjtm_ has joined #lima
niceplaces has joined #lima
mripard_ has joined #lima
adjtm has quit [Remote host closed the connection]
jonkerj has quit [Remote host closed the connection]
niceplace has quit [Quit: ZNC 1.7.4 - https://znc.in]
mripard has quit [Ping timeout: 272 seconds]
jonkerj has joined #lima
paulk-leonov has quit [Ping timeout: 268 seconds]
yuq825 has joined #lima
paulk-leonov has joined #lima
yuq825 has quit [Ping timeout: 246 seconds]
yuq825 has joined #lima
<anarsoul> rellla: yuq825: I tried to allocate extra page for heap but it still fails
<anarsoul> yuq825: I remember one of the ARM guys saying that they had some issues with GP_IRQ_PLBU_OUT_OF_MEM and that they switched to mmu faults ("grow on fault") technique instead
<anarsoul> maybe that's the issue he was talking about?
<anarsoul> enunes: do you remember any details about that? ^^
<yuq825> ok, panfrost use the mmu way, but at least mali400 kernel driver still use the irq way
<anarsoul> yuq825: hm, weird, I added some traces to the driver
<anarsoul> and looks like lima_gp_task_recover() is called 4 times while it lima_heap_alloc() is called only once
<anarsoul> looks like we never update f[LIMA_GP_PLBU_ALLOC_END_ADDR >> 2]?
<yuq825> yes
<yuq825> I just change it and not see problems in supertuxkart
<anarsoul> it doesn't fix deqp though...
<anarsoul> yuq825: can you show your diff?
<yuq825> which test?
<anarsoul> dEQP-GLES2.functional.color_clear.long_masked_rgb
<anarsoul> it works fine with LIMA_DEBUG=nogrowheap but fails with growing heap
<anarsoul> and it needs 256k of heap
<yuq825> this one
<anarsoul> yeah, mine is similar
<anarsoul> guess I'll try to dump heap contents
<anarsoul> yuq825: uh
<anarsoul> I think we need to update start addr as well
<anarsoul> since we don't get any faults if we don't increase allocation
<anarsoul> let me try that
<yuq825> you mean the start register?
<anarsoul> yes
<anarsoul> i.e. if we begin with: start = 0, end = 32k
<anarsoul> and we get plbu out of mem
<anarsoul> we have to resume with start = 32k end = 64k
<anarsoul> hope it makes sense :)
<yuq825> possible
<anarsoul> I'm about to try it
<yuq825> i thought you will try to resume with start=0
<anarsoul> yep
<anarsoul> it works
<anarsoul> do you want me to send a patch?
<yuq825> sure
buzzmarshall has quit [Remote host closed the connection]
<yuq825> oh, if this is true, then heap buffer need not be continuous in VM
<anarsoul> yuq825: I guess it still needs to be continuos
<anarsoul> for PP
<anarsoul> same as for varyings, GP doesn't need contiguous varyings since it has descriptors, but PP needs contiguous BO
<anarsoul> rellla: I'd appreciate if you can test it: https://lists.freedesktop.org/archives/dri-devel/2020-February/255235.html
<anarsoul> yuq825: supertuxkart works fine now with my fix
<yuq825> nice
_whitelogger has joined #lima
megi has quit [Ping timeout: 260 seconds]
<anarsoul> I set q3a demo to run in loop, let's see if it survives several hours
_whitelogger has joined #lima
buzzmarshall has joined #lima
<anarsoul> yuq825: do you know any algorithms to estimate area of N overlapping rectangles? I want to add some heuristics for pp stream generation, i.e. use full screen stream if area is higher than certain threshold (75% of screen?)
buzzmarshall has quit [Remote host closed the connection]
<anarsoul> seems to be stable so far
_whitelogger has joined #lima
_whitelogger has joined #lima
<yuq825> i don't know, that's also what I want but haven't find any algorithm
<anarsoul> I guess fastest we can do is to compute bounding box (that's what we already do) and use it for estimation
<yuq825> if the number of damage box is not too many, we can just count tiles one by one
<anarsoul> yuq825: that's about the same complexity as generating pp stream
<yuq825> no
<yuq825> one assumption is damage box number, for example < 10
<anarsoul> how is it different from generating pp stream from these boxes?
<yuq825> start with one box, for example (0, 0, 159, 159), count 10x10 = 100 tiles
<anarsoul> OK, what if we have (0, 0, 159, 159), (15, 15, 159, 159)?
<yuq825> use rectangle calculation get the added area, the area not in any before boxes
<yuq825> so the damage box number should not be too big
<rellla> anarsoul: will test the patch tomorrow, thanks for working on that
<anarsoul> yuq825: I still don't get it
<yuq825> I mean not check each tile one by one, but only the box parameter
<anarsoul> interesting but it doesn't scale well :(
<anarsoul> I think it's O(n*n) for boxes
<yuq825> so damage box should not be too many
<yuq825> which is most case
<yuq825> if damage box > 10 for example, use bound box
<yuq825> wow, another doc for this https://leetcode.com/articles/rectangle-area-ii/
<yuq825> Segment Tree,  O(Nlog N)
_whitelogger has joined #lima
_whitelogger has joined #lima
yuq825 has quit [Remote host closed the connection]
yuq825 has joined #lima
dddddd has quit [Ping timeout: 268 seconds]
mixfix41 has joined #lima
mixfix41 has left #lima [#lima]
warpme_ has joined #lima
yuq825 has quit [Ping timeout: 268 seconds]
yuq825 has joined #lima
anarsoul|c has quit [Quit: Connection closed for inactivity]
adjtm_ has quit [Ping timeout: 268 seconds]
Viciouss has joined #lima
adjtm has joined #lima
dddddd has joined #lima
warpme_ has quit [Quit: Connection closed for inactivity]
<rellla> anarsoul, yuq825: passing 19/19 now with growheap enabled and the kernel patch! nice work!
<rellla> time for a complete deqp run
yuq825 has quit [Quit: Leaving.]
anarsoul|c has joined #lima
megi has joined #lima
buzzmarshall has joined #lima
anarsoul|c has quit [Quit: Connection closed for inactivity]
warpme_ has joined #lima
anarsoul|c has joined #lima
<anarsoul> rellla: great, can you reply to the patch with your "Tested-by"?
yann has joined #lima
yann has quit [Ping timeout: 272 seconds]
anarsoul has quit [Read error: Connection reset by peer]
anarsoul has joined #lima
<rellla> yeah, but again ... tomorrow :) i had a few unexpected passes. color_clear.* and depth_stencil_clear.* ones
anarsoul has quit [Ping timeout: 265 seconds]
anarsoul has joined #lima
<anarsoul> rellla: is it with yuq's MR?
anarsoul has quit [Read error: Connection reset by peer]
anarsoul|2 has joined #lima
anarsoul|2 has quit [Remote host closed the connection]
anarsoul has joined #lima