Published: July 13, 2026
Read: 49 min
In: Culture & Lifestyle
Home Phoronix Phoronix Forums X.Org Videos From FOSDEM 2008

Radeon IRC Logs For 2008-6-06

Search This Log:


MostAwesomeDude: Huh. So the differences are in stencil buffer code, a bit of HZ init, and a lot of VAP differences.
MostAwesomeDude: But it’s all documented and shouldn’t be doing anything funky. Argh.
dmb: airlied, i tried your suggestion of copying over the dri/drivers/r300 and radeon to the older mesa 7.03 for the older x servers, and it won’t compile
airlied: dmb: does it die in radeon build?
dmb: yes
airlied: dmb: can you pastebin the error? you may still need new drm headers if you haven’t done that
dmb: ok, one sec
dmb: airlied, http://pastebin.da4.org/283
dmb: it could be the drm headers
airlied: dmb: actually its a bit harder than I thought, the dri interface changed πŸ™
dmb: oh
MostAwesomeDude: Someday somebody needs to rewrite synaptics to be in the xorg tree.
MostAwesomeDude: Too bad we can’t look at the source.
arekm: ehm, didn’t developers agreed to change license to MIT?
MostAwesomeDude: arekm: No, synaptics is still GPL and not under fdo’s control.
MostAwesomeDude: And the actual tree hasn’t been touched in months.
MostAwesomeDude: If you Google, you can find patches, but the ABI just changed, so I have the choice of using an external mouse or not having up-to-date Mesa.
arekm: MostAwesomeDude: “I’ve tracked down every single developer that we need an agreement from
arekm: for changing the synaptics X11 driver from GPL license to MIT license.”
arekm: http://marc.info/?l=freedesktop-xorg&m=117941738324518&w=2 very long thread + some discussion but no final conclusion
MostAwesomeDude: http://web.telia.com/~u89404340/touchpad/
MostAwesomeDude: He doesn’t maintain the tree, which is very annoying because it means we have to keep patching up.
arekm: anyone can take over …
glisse: I think fdo can host gpl
glisse: we did in the past
glisse: and might already do such
glisse: airlied: for lockup story my branch fixes all wait gpu in loop lockup
glisse: airlied: but there is one kind of hard lockup where it doesn’t do anythings
arekm: btw. do you see lockups with linus git kernel after resume from ram? Not sure if these are radeon related yet
glisse: airlied: hard to debug but my feeling is that while we are parsing the cmdbuf and advancing the ring we are setting the gpu in a state where it eagerly wait for some data and go mad
glisse: airlied: maybe commiting cmd in one big chunk will help here
glisse: also maybe using the valgrind kernel equivalent would be a good idea πŸ™‚
glisse: nh_: got a kil question
glisse: nh_: doesn’t texkil operate on retrieved texel rather than on src addr ?
glisse: at leat this is the understanding of my doc reading
MostAwesomeDude: glisse: For r5xx, at least, it operates on the texel.
MostAwesomeDude: Or rather, src_addr points to a texel, not a fragment.
MostAwesomeDude: No, wait, I’m tired.
MostAwesomeDude: texkil is in the tex inst set, but it operates on srcs in the pixel stack.
MostAwesomeDude: So it doesn’t op on texels.
MostAwesomeDude: …Should get sleep, I think.
MostAwesomeDude: r3xx is the same, I think.
glisse: MostAwesomeDude: where is it in doc ?
MostAwesomeDude: We just emit them with emit_tex because kill is grouped with the tex regs.
MostAwesomeDude: Um, one sec.
nh_: KIL is not supposed to perform a texture lookup, and as far as I can tell, it doesn’t
glisse: for me in TEXKILL: Kill pixel if any component is < 0 component mean one of the texel component
nh_: it’s just that for some reason, everybody implements KIL as part of the texture register set
nh_: glisse: where does it say that?
MostAwesomeDude: glisse: They mean “pixel” as opposed to “texel.”
glisse: in US_TEX_INST register description
MostAwesomeDude: nh_, glisse: Page 239 of the r5xx docs.
MostAwesomeDude: But if you look at tri-kil for example, it doesn’t use any textures at all.
MostAwesomeDude: And you’d have to stuff in order to get negative values into the textures, anyway.
MostAwesomeDude: So it doesn’t make sense to read from the textures.
glisse: MostAwesomeDude: where does it say pixel and not texel ?
MostAwesomeDude: Pg. 239.
glisse: MostAwesomeDude: it does make sense to read from texture
glisse: pag 239 they say component nothing else
glisse: i just quoted the doc
MostAwesomeDude: tri-kil is:
MostAwesomeDude: 0: SUB TEMP[0], INPUT[1], CONST[0].-x-y-z-w;
MostAwesomeDude: 1: KIL TEMP[0];
MostAwesomeDude: 2: MOV OUTPUT[0], TEMP[0];
MostAwesomeDude: 3: END
nh_: you’re right, but a) all APIs define KIL to *not* read from textures
nh_: b) all KIL-tests I know of work correctly with current r300
nh_: c) fglrx does basically the same thing we do, and it doesn’t upload a texture for KIL instructions
nh_: so I think it’s safe to say that the doc is simply a little imprecise in its language
glisse: nh_: okay last point win πŸ™‚
MostAwesomeDude: nh_: To say the least.
nh_: oh, plus what MostAwesomeDude dude said: KIL checks for component < 0, and it’s a little hard to get that from a texture
glisse: yup i was getting confuse by component which is generaly associated with a pixel/texel
MostAwesomeDude: Hehe.
nh_: yeah
glisse: nh_: signed texture
MostAwesomeDude: I’m still confused by texcoords.
MostAwesomeDude: *fogcoords.
glisse: nh_: i am sure you can get < 0 with signed texture as this is needed for easy stipple implementation
nh_: hmm
nh_: TEX tmp, stipplecoord, …;
nh_: KIL -tmp;
nh_: ?
glisse: yup that way to
nh_: but that requires two texture instructions, one ALU instruction and an indirection
nh_: I can’t believe there’s no easier way to do it :/
nh_: (but I don’t have an fglrx setup to test what it does)
MostAwesomeDude: nh_: Yeah, that would need to be TEX, MOV, KIL, since we can’t do negate on tex insts.
glisse: nh_: well if you use signed texture no need to use a mov
MostAwesomeDude: Oh yeah, and indirection on r3xx. Still don’t understand indirection nodes, either.
MostAwesomeDude: glisse: Good point.
nh_: MostAwesomeDude: it’s not that difficult, actually; every indirection node is a bunch of tex instructions followed (logically) by a bunch of alu instructions
glisse: nh_: well i am pretty sure they do stipple that way, upload a signed texture of the pattern and kill
MostAwesomeDude: nh_: Right, but I never really understood how they were packed for r3xx.
nh_: so to implement old-school texturing, you have one node that contains all tex instructions for all enabled texture units, and then a bunch of ALU instructions for the texture environment functions
MostAwesomeDude: Mm.
MostAwesomeDude: takes furious notes
nh_: the instruction formats are different, so there’s one space for the tex instructions and one space for the ALU instructions
MostAwesomeDude: nh_: IIRC there’s two separate engines for tex and alu on r3xx, right?
nh_: US_CODE_ADDR_? contains the “pointers” that indicate where the blocks are
nh_: that’s true
MostAwesomeDude: I really do like a lot of the simplifications they put into the r5xx shader. I wonder how different the r6xx will be…
nh_: actually, the same is true for r5xx as well, if you think about how the semaphore stuff works; it’s just that the instruction format is more unified
nh_: does the r6xx have unified shaders?
glisse: nh_: btw it’s acceptable to have no alu in one node right ?
MostAwesomeDude: nh_: Well, I’m sure they’re unified, but I don’t know how similar they are to the r5xx shaders.
nh_: glisse: good question; I’m not sure about that
glisse: nh_: i got fragprog where that would be useful
MostAwesomeDude: Best case, obviously, is that they’re perfectly identical to r5xx shaders. Shader 3.0, GLSL capable, and no new code needed to support them.
glisse: of course i can always put one alu nop
MostAwesomeDude: glisse: I don’t think you can output to the fifo with a tex inst.
glisse: MostAwesomeDude: given dx10 and r6xx review like the one on beyond3d.com i am pretty sure the unified shader is a bit more complexe
glisse: MostAwesomeDude: yup that’s true but i still have use case where no alu in a node is usefull
glisse: for instance computation depend on a previous texture lookup, this computation give the coordinate of next texture lookup
glisse: anyway got to go bbl
nh_: glisse: I believe you have to have at least one ALU insn
nh_: simply by the way US_CODE_ADDR is formatted
bridgman: Just a reminder that the r6xx instruction set has already been published
bridgman: just borrow a windows box, download the firestream sdk, and look in the docs
MostAwesomeDude: bridgman: Isn’t it just Shader 3.0, GLSL?
bridgman: section. I’m trying to get the same docs published on our page but the whole
bridgman: page disappeared in the last couple of days. It’s still there but the
bridgman: navigation paths are gone; unfortunate side effect from trying to merge
bridgman: the ATI and AMD developer sites ;(
MostAwesomeDude: Mm.
bridgman: MostAwesomeDude: nope, 300+ pages of shader instruction detail including bitfields
MostAwesomeDude: Urk.
MostAwesomeDude: I don’t know whether to crawl up and hide or jump for joy and make squealing noises.
bridgman: Why choose ?
MostAwesomeDude: Hard to crawl and jump simultaneously.
MostAwesomeDude: Seriously, though, that sounds pretty cool.
bridgman: Hold down CTRL and hit the space bar at the same time
nh_: glisse: For your backlog-reading benefit: the end address of the ALU section in us_code_addr is inclusive; that means that every node has to have at least one ALU instruction
MostAwesomeDude: And it sounds like I’ll have my hands full.
MostAwesomeDude: bridgman: …And now there’s soda on my screen…
nh_: bridgman: do you know if there is some magic in r3xx that allows line stippling to be implemented without code in a fragment program?
bridgman: nh_: no; that is what I am trying to find out but I have not yet made it across
nh_: bridgman: didn’t find anything in the docs, and we don’t really have the infrastructure in place yet to dynamically alter fragment programs depending on the rest of the OpenGL state :/
nh_: bridgman: okay
bridgman: to the appropriate groups without getting snagged on the way for some other issue
bridgman: probably next week
MostAwesomeDude: nh_: …Yet.
nh_: yes πŸ™‚
nh_: bridgman: thanks πŸ™‚
MostAwesomeDude: Part of the fun of Gallium will be writing arbitrary additions to FP based on state.
bridgman: yeah; I still don’t have a good feeling for whether Gallium is going to fly
bridgman: without a heavy-duty shader compiler
MostAwesomeDude: bridgman: I’m told they’re working on it. Maybe someday we’ll even have HLSL support.
bridgman: MostAwesomeDude: yep, and I think the results will be good. I don’t know enough about
bridgman: what is possible today though, and that’s something we need to get our little
nh_: the trouble is: will “they” support the quirky RGB/A split and the indirection nodes?
bridgman: heads around soon
quicksilver: When the compiz demos show things like video running in windows which then get mapped to the surface of a cube, how does that work architecturally?
quicksilver: is that still using overlays for the video?
bridgman: quicksilver: nope, you have to use textured video with a compositing manager
MostAwesomeDude: quicksilver: Long story, but basically the video is being rendered to a pixmap.
bridgman: that puts the video in a memory buffer, then compiz just uses it as a texture and draws
quicksilver: nods
bridgman: it on the surface of the cube
quicksilver: so for it to work efficiently, you need shared texture memory?
quicksilver: accessible by CPU and GPU both?
MostAwesomeDude: quicksilver: Yep.
quicksilver: nods
bridgman: One big part of getting good performance is trying *not* to touch it with the CPU
bridgman: so you can just leave the info in video memory where the GPU can chew on
MrCooper: yeah, the CPU shouldn’t need to touch it
bridgman: it quickly; but there are still parts of the X environment where the CPU needs
nh_: MostAwesomeDude: I’m still wondering if it’s possible to map the somewhat quirky r3xx fragment programs onto the TGSI that gallium uses
bridgman: to draw pictures
MostAwesomeDude: nh_: Maybe we can trick marcheu into doing it?
bridgman: nh_: it’s not quirky, it’s the standard by which others are judged πŸ˜‰
nh_: πŸ˜›
quicksilver: bridgman: but the code which actually decompresses and displays the video has to put it there each frame, surely?
MrCooper: nh_: if you mean TGSI has shortcomings, please bring them up on the mailing list
quicksilver: bridgman: and that means the CPU…
nh_: MrCooper: mesa-devel?
bridgman: quicksilver: yes and no. agd5f knows the details better (he wrote the texvid code)
MostAwesomeDude: quicksilver: Depends. XV is almost completely GPU, while stuff like Flash is CPU.
bridgman: but basically the sequence goes something like this :
MrCooper: nh_: yeah, mesa3d-dev
bridgman: – CPU has compressed YUV video in system memory
bridgman: – driver uploads to video memory, either by CPU or blit
MrCooper: quicksilver: the YUV data is uploaded to video RAM via a hostdata blit
bridgman: – GPU treats the compressed YUV video as a texture and renders
bridgman: to uncompressed video buffer; texture engine handles scaling and
quicksilver: nods
bridgman: conversion from yuv to rgb
MrCooper: quicksilver: then rendered to the pixmap as RGB using the 3D engine
quicksilver: OK, that’s simple compression.
MostAwesomeDude: bridgman: Spot-on.
quicksilver: btu supposing the video is mpeg2 or, worse, x.264
quicksilver: then the CPU has quite a lot of work to do to generate each frame.
MostAwesomeDude: quicksilver: Well, ffmpeg only has to decode to an unscaled YUV frame. That’s actually not much work.
bridgman: again yes and no; today on radeon hardware the decode work is done by cpu
bridgman: but (a) we plan to open the IDCT block, and (b) MC (motion comp) the most expensive
quicksilver: nods
quicksilver: yes, that will be nice πŸ™‚
MrCooper: quicksilver: right, and there’s no more you can do with XVideo, as opposed to something like XvMC
MostAwesomeDude: Typically, videos have to be upscaled 2x-4x, and a HQ upscale is a slow process on CPU.
bridgman: part of MPEG2 decode is done with shaders anyways; 5xx register specs cover
bridgman: the shader details but don’t think anyone has had time to think about it yet
quicksilver: MostAwesomeDude: on my system the CPU is deinterlacing too…
MostAwesomeDude: Just moving the upscaling to the GPU reduces load from 100% to 5% for my Core 2 Duo.
quicksilver: MostAwesomeDude: which is more expensive than a simple upscale.
MostAwesomeDude: quicksilver: Yeah.
quicksilver: (I presume)
bridgman: quicksilver: this must be really hard reading all these interleaved explanations πŸ˜‰
MostAwesomeDude: bridgman: One of the GSoC students is doing XMVC for Gallium in shaders.
quicksilver: No, my brain has a very advanced off-chip deinterleaver.
quicksilver: Honed over years of text-based communications.
MostAwesomeDude: So once we move to Gallium we get free shader-based MC.
bridgman: MostAwesomeDude: yeah, that sounds interesting
bridgman: quicksilver: never learned that skill; I’m useless at parties
MostAwesomeDude: Of course, using dedicated IDCT and MC on-board the GPU would be even faster.
quicksilver: bridgman: once you have decent hardware assist for radeon drivers then I will go buy myself a newer ATI card πŸ™‚
quicksilver: for now, I only do SD on a radeon 9250 and it works fine in software.
bridgman: heck, why wait, we can help you write the driver code yourself πŸ˜‰
quicksilver: πŸ˜‰
quicksilver: ETOOMANYPROJECTS
quicksilver: as they say.
bridgman: nuts, sun is coming up, better try to sleep again
bridgman: bye
bridgman: forgot something; on the proprietary drivers we deinterlace with shaders; I
bridgman: imagine we’ll want to do something similar in the open source drivers at
bridgman: some point
bridgman: ok, outa here again
MostAwesomeDude: Man, is there anything shaders can’t do?
adamk: Can they make me breakfast?
MostAwesomeDude: Don’t see why not.
MrCooper: they can cook your eggs for sure
MostAwesomeDude: TEX plate, bacon, 2D;
MostAwesomeDude: MUL temp1, eggs;
MostAwesomeDude: ADD plate, eggs;
MostAwesomeDude: MAD out, toast, plate, paper;
MostAwesomeDude: Tired, but I think the idea’s there.
quicksilver: well shaders is really a bad word for them.
quicksilver: they’re just per-pixel programs
quicksilver: (per-fragment)
MostAwesomeDude: Yep.
quicksilver: clearly a shader can do deinterlacing if it has access to the source image
quicksilver: which is presumably available as a texture
MostAwesomeDude: Well, I mean, you would deinterlace two frames at a time, right?
quicksilver: I guess so yes
quicksilver: keep the last-but-one frame around as a texture too πŸ™‚
MostAwesomeDude: You would need fragment.position, though.
quicksilver: I’m actually not at all sure how the clever deint algorithms work.
MostAwesomeDude: Which we don’t support yet, I think.
quicksilver: maybe they use multiple old frames
MostAwesomeDude: You mean, an accum-buffer kind of thing?
MostAwesomeDude: Hmm, maybe.
MostAwesomeDude: Hopefully we’ll get accelerated accum buf when we get better mem management.
glisse: nh_: for stipple i am sure we need a special frag prog
glisse: and i don’t see any trouble to implement this
glisse: in updateshader we just check for stipple line and if stipple is enable than rather than uploading the measa provided shader we upload ours
MostAwesomeDude: glisse: Well, we have to draw everything else in the scene too, right?
nh_: glisse: isn’t Line stipple orthogonal to the rest of the OpenGL state?
glisse: bridgman: for log reading πŸ™‚ in gallium we will have to implement the compiler i have started to think and play a bit with it and tgsi instruction set are just mervelous for that
nh_: i.e. it’s supposed to be only a function modifying the fragment generation
nh_: the rest of the pipeline remains unmodified
glisse: nh_: yup so at end of line stipple you have to reupload old program
nh_: umm?
MostAwesomeDude: glisse: Why not just modify the program in-place?
nh_: glisse: so you want two-pass rendering for stippling??
MostAwesomeDude: *in-place before uploading?
glisse: nh_: in fact line stipple happen in begin/end pair
glisse: so we are in a different context i am sure we don’t have to care that we changed the fragprog
glisse: mesa will ask to change context after
glisse: nh_: no two pass just one pass
nh_: it seems to me we’re not on the same page
MrCooper: the two things probably need to be combined into the HW shader
nh_: exactly
glisse: ie enable(stipple),begin(line),feed_vertex,end(line) is a new context
MrCooper: FWIW, Gallium already handles that for the driver
nh_: glisse: line stippling does not disable the ARB_fragment_program, so we have to combine the line stippling FP with the user-specified FP
glisse: nh_: user can specify a fragment shader for stippling ?
glisse: for line
glisse: ?
glisse: gl is weird
glisse: πŸ™‚
nh_: I’m almost 100% certain
nh_: as long as GL doesn’t say that the downstream pipeline is changed by line stipple enable, it sn’t
glisse: combining shader is pretty easy in stipple case
glisse: it just add a node
nh_: sure
MostAwesomeDude: Not quite.
nh_: an efficient solution would be more complicated, though
glisse: nh_: what would be efficient ?
MostAwesomeDude: IIRC OGL would want all of the stuff to be drawn as fragments BEFORE the FP processing.
MostAwesomeDude: So really you would have to do your stipples at the beginning of the FP.
glisse: there is no way to optimize this node
MostAwesomeDude: No, wait.
nh_: glisse: it can be merged with nodes in the user-specified shader
glisse: well you still can put texture fetch in the first node
glisse: nh_: yup
quicksilver: what does stipple mean in this case?
glisse: quicksilver: look at gl specification
nh_: quicksilver: dotted/dashed lines, basically
quicksilver: glLineStipple?
nh_: yes
quicksilver: nods
quicksilver: Does anyone actually use that? πŸ™‚
glisse: nh_: well adding text to first node is easy but possibly moving alu is bit more cumberstone
nh_: nods
glisse: quicksilver: googlemap i think
nh_: I’d suspect stuff like Blender needs it as well
glisse: or googleearth can’t remember the name never used it
nh_: glisse: for r3xx FP, do you think it’s feasible to use TGSI internally? As far as I can see, TGSI doesn’t know about RGB/A splits an indirection nodes
glisse: bridgman: so on the compiler side again i am pretty sure having a simple efficient compiler taking advantage of tgsi abstraction language is doable in short period of time
glisse: nh_: well i am thinking here to use compiler pass on tgsi
glisse: i have toyed with llvm but llvm loose too much gpu specific information that tgsi can have
glisse: nh_: basicly you run optimization pass on tgsi and at the end you feed tgsi to somethings like our current fragshader
nh_: okay, so it might be useful for generic optimization passes
glisse: but we can remove all special case in translation as optimization pass can transform the shader in somethings directly correct for hw
glisse: nh_: not only generic optimization but also crazy optimization like taking advantage of the rgb/a split
MostAwesomeDude: Okay, so let’s say we draw a tex, then draw some stipple lines, then draw another tex over some of the stipple.
MostAwesomeDude: In the fragprog, there’d be no way to handle that, at least that I can think of.
glisse: also optimize swizzle to convert to native swizzle where ever possible, or otherwise inject necessary instructions so we don’t have to do it in the translation phase
nh_: glisse: but those kinds of optimizations won’t be generic, so it doesn’t matter whether they use a TGSI-extended representation or a custom representation
nh_: glisse: true; like tex_rect coordinate calculation and swizzle in TEX instructions
glisse: nh_: yup doesn’t matter but tgsi representation is good and extentable
glisse: no need to do a new one when this one perfectly fit
glisse: MostAwesomeDude: i think you are bit confuse here, when you draw line (stipple or not) you are in a know context
glisse: if you draw something else you change context
MostAwesomeDude: glisse: So when we leave the GL_LINE_STIPPLE (or whatever it’s called) we update the FP, flush the lines to the GPU, and draw it all, before taking in more GL commands?
glisse: MostAwesomeDude: whenever you change primitive you can trigger a context change
MostAwesomeDude: glisse: Ah.
glisse: and even if gl app use the same fragprog to draw stipple line and then triangle then we will have to reupload normal fragprog when primitive type change
glisse: but you know when primitive change
MostAwesomeDude: So that’s why I’ll see massive amounts of fragprog changes in small amounts of time.
glisse: MostAwesomeDude: well today we are not clever at all about such things so we likely upload a bit too much context
MostAwesomeDude: glisse: No, it makes sense; I mean, when I see state changes like that, it’s because we used a tex, or we’re using accelerated lighting, or something like that.
cbrill_: MostAwesomeDude, http://people.freedesktop.org/~cbrill/synli2/
cbrill_: MostAwesomeDude, every single developer agreed to the license change
cbrill_: MostAwesomeDude, now just someone needs to step up and create a fdo project for it
cbrill_: MostAwesomeDude, the issue was that the maintainer stopped maintaining the synaptics while I was getting the agreement from all developers
glisse: cbrill_: if you ask on #fdo or #xorg i am sure you can have a repo created pretty quickly
cbrill_: glisse, hmm, good point. maybe I’ll do this πŸ™‚
stikonas: Is hard system lockup usually caused by graphic drivers or not?
mikkoc: stikonas: http://www.phoronix.com/forums/showthread.php?t=10265
mikkoc: and related bug https://bugs.freedesktop.org/show_bug.cgi?id=16198
stikonas: mikkoc, I have infamous RS480, so isn’t R300
mikkoc: ah ok
stikonas: mikkoc: though, it can of course be caused by the same reason
stikonas: should I try git?
mikkoc: you can try yea…
elbeardmorez: well that’s a first, no agd5f.. I found a thread mentioning that agd5f had done some cleanup on r3/4/5 drm code last month.. just hoping this might be why my rv350ap now defaults to 1 pixel pipeline after ‘failed to determine num pipes from DRM’. Is this a known issue to anyone?
glisse: r600 il looks a lot like tgsi
fpoibaf: elbeardmorez: you should upgrade your DRM module to at least 1.29 version from git
elbeardmorez: fpoibaf: thanks, upgraded my kernel last week and forgot to replace those modules. The error has now gone, and low and behold: “num pipes is 1” <- is this card really that pants? Do you have any knowledge of what the ‘AP’ range of chips are.. ..i’m guessing at ‘rubbish version of rv350 chip..’ hmm.
MrCooper: elbeardmorez: AP is the PCI device ID in ASCII
elbeardmorez: MrCooper: oops. thanks.
MrCooper: np
MrCooper: elbeardmorez: you can try hacking the driver to use more pipes…
elbeardmorez: MrCooper: how do I know that I have disabled pipes?
MrCooper: if you hack the driver to use more and get better performance and still correct rendering
MrCooper: of course you do that at your own responsibility
dmb_: hey
dmb_: can anyone tell me if they can reproduce this hard lock?
dmb_: on r5xx hardware
dmb_: with the git mesa and drm
dmb_: Run the gnome screensaver tool and selecct skyrocket, and hit preview
dmb_: wait for the screensaver a little, and it hard crashes (at least for me)
hifi: thats probably the same bug which has already been reported
MrCooper: dmb_: ‘hard crash’ as in can’t ping the machine?
dmb_: MrCooper: didn’t have another computer next to me, so couldn’t test that
dmb_: but the mouse could move,i just couldn’t kill X, change vt’s etc
dmb_: i meant hard lockup
MrCooper: if the mouse moves that’s not very hard at all πŸ™‚
glisse: dmb_: if you got time test radeon-lockup-free branch of git://people.freedesktop.org/~glisse/drm
dmb_: glisse: ah, so its known it lockups in some cases>
glisse: dmb_: know from ages
MrCooper: GPUs lock up all the time
glisse: well since monkey walk πŸ™‚
glisse: stupid monkey
dmb_: i’ll try that when i get back from work
MrCooper: those symptoms could be anything from the vblank related hangs fixed recently to various kinds of GPU lockups
dmb_: i think its vblank related
dmb_: just a weird feeling…
glisse: MrCooper: btw do you got anyidea of what could be a cause of hard lockup ?
glisse: my branch fix only wait in loop for gpu idle
MrCooper: dmb_: if so, vblank_mode=0 should work around it
dmb_: MrCooper: ok, so its not the vblank sutff, i all ready had vblank_mode=0
MrCooper: glisse: what kind of ‘hard’ lockup do you mean, a bus lockup?
glisse: MrCooper: well nothings is responsive anymore, not more output on log through ssh not more mouse, hd stop working ….
glisse: so real hard lockup πŸ™
glisse: hardest one to debug as you can’t know what kind of stuff was going on when it happens
dmb_: indeed
dmb_: i was expirencing some hard lockups on fglrx + doom3
dmb_: i’ll test your branch glisse when i get back from work, which will be in a good 9 hours πŸ™
glisse: dmb_: then good luck for this hard day of work πŸ˜‰
dmb_: lol
MrCooper: normal GPU lockups tend to appear ‘harder’ with fglrx as it tends to spin in the kernel
MrCooper: glisse: could be bus lockups, maybe one of the bus state machines getting upset about something
MrCooper: glisse: a $100K PCIe bus analyzer is handy for diagnosing that kind of thing πŸ˜‰
rschmidt: hi guys, I’m working on getting the radeon driver to display on a Samsung SyncMaster 460Dxn, which is a TV with a computer built-in (AMD + ATI-based). I’ve already tried a couple of modern distros (with the open-source ati driver), and it seems that the card doesn’t think it’s connected to anything. Do you guys know of a small distro or something I can use to test the latest X version, and hack/recompile the driver, without going to the trouble of inst
rschmidt: alling something big like Fedora?
rschmidt: sorry, that was a little long πŸ˜›
hifi: rschmidt: arch linux
rschmidt: okay, I’ll check it out… thanks, hifi
hifi: install only the base system when doing the installation, others are just bloat
rschmidt: that’s the kind of thing I was looking for
hifi: you’ll need some custom packages from AUR (Arch User Repository) which contains gentoo-like build scripts to install latest git things for testing
hifi: if you need the git version of radeon driver
rschmidt: yeah, I’m planning on recompiling the latest version, so git will be needed
hifi: http://aur.archlinux.org/packages.php?ID=16687 thats one thing you at least need
rschmidt: I was working a bit with agd5f a couple of weeks ago on this, and he said it was something about the driver not realizing it was supposed to be connected via LVDS
rschmidt: ok, noted, will install it
hifi: when you hit a wall with arch, don’t hesitate to ask πŸ™‚
rschmidt: thanks πŸ™‚
rschmidt: I’m a pretty experienced user, but I’ve never used Arch before
rschmidt: so I’ll probably hassle you with a few questions
hifi: you’ll probably be at home then, just the new package manager
rschmidt: I’m not too worried
hifi: and the bsd style file layout if you’re not used to that
rschmidt: that’s okay too
hifi: download the net install iso
hifi: it’s a rolling release distro so you’ll get old packages anyway with full or base disk
rschmidt: I’m downloading ‘archboot.core.iso’ right now… didn’t notice a net install iso, but I’ll double-check
rschmidt: ah, the ftp iso… okay
hifi: will just waste bandwidth to download everything twice πŸ™‚
rschmidt: yeah, and 35 megs is much smaller than 200.
glisse: MrCooper: maybe i can ask amd to test on their bus analyzer πŸ™‚
MostAwesomeDude: Morning, guys.
glisse: i think there is such things in my lab but i am not sure, my lab is way too big and i barely speak with electronician
MostAwesomeDude: So, does texfilt work for anybody with r3xx? It’s definitely broken for aniso != 1.0 on r5xx.
hifi: MostAwesomeDude: how can I test it? I have a r3xx machine running just next to me
MostAwesomeDude: hifi: Just run progs/tests/texfilt and hit A a few times to increase the anisotropy.
MostAwesomeDude: If it’s broken for you, it’ll turn borked when you hit A, and it will unbreak when you press a.
hifi: nothing happend when I increased the anisotrophy level
hifi: so its probably not broken then?
MostAwesomeDude: Yeah.
MostAwesomeDude: Which means…time to RE the correct filtering mechanism on r5xx. Joy.
MostAwesomeDude: Or just find whatever crazy name AMD decided to give to the correct register.
hifi: but should I see some changes in the drawn picture when I increase it?
hifi: is it supported at all on my card
hifi: should be probably as its 9600 Pro
MostAwesomeDude: hifi: It would be very hard to see the changes on texfilt. Anisotropic filtering is very subtle; the best way to see it would be to turn it on in compiz and then tilt the cube to an extreme angle.
MostAwesomeDude: Mipmaps get blurry when tilted; anisotropically filtered texs stay sharp.
hifi: then its probably working right
MostAwesomeDude: Yes.
icewaterman: how can i prevent my screen from flickering when some application starts that uses xv?
icewaterman: or opengl
xnguard: MostAwesomeDude: I know it’s probably hard to say for sure, but is it safe to assume that solid R6xx support is at least a year out?
dmb: MostAwesomeDude: also, while your here, test the skyrocket screensaver with r5xx drm/dri
dmb: it hard locks me
dmb: going to try glisse’s branch when i get back πŸ˜€
MostAwesomeDude: dmb: In a bit, I’ve got useful windows open.
dmb: lol
MostAwesomeDude: xnguard: I’d like to think it’s closer to 4-6 months.
xnguard: MostAwesomeDude: Really? Neat.
MostAwesomeDude: icewaterman: Turn off Composite.
icewaterman: MostAwesomeDude: that happens even with composite disabled
xnguard: I’m thinking about getting an HD card and leaning on fglrx until -ati “gets there.”
MostAwesomeDude: Hmm.
icewaterman: MostAwesomeDude: it only flickers when the app is started, once the game or the video is played back everything is fine
MostAwesomeDude: xnguard: We were talking about it on the mailing list. The plan is to write r6xx support on top of r3xx/r5xx, and then port the entire thing into Gallium when we can.
hifi: I’ll get a R500 card some time this summer, I’d love to get rid of this nvidia propietary crap (which actually hardlocks if I install another pci display card)
MostAwesomeDude: icewaterman: I’ve only seen that with Composite enabled; I don’t get flickering otherwise…
xnguard: Just not sure if I want to suffer the hell of fglrx failing to support .
hifi: feature? πŸ™‚
MostAwesomeDude: hifi: Go for it. You can find X1900 PCI-E cards at most retail places.
xnguard: hifi: Neat! Sounds like my old nForce 220 board that won’t boot with the AGP slot filled– unless it’s filled with an NV AGP card.
MostAwesomeDude: XD
hifi: only thing I need running is quake, then I’ll get one when it runs πŸ™‚
hifi: including openarena of course
xnguard: The nForce board’s in my Token Windows Box… which is getting to be a pain, because I do actually use it for some development work.
MostAwesomeDude: hifi: We
MostAwesomeDude: hifi: We have openarean running.
hifi: then its just up to it being stable and released πŸ™‚
icewaterman: MostAwesomeDude: maybe it is an ubuntu problem
MostAwesomeDude: icewaterman: Maybe. I don’t know.
hifi: I believe the R500 work ist just in git right now?
MostAwesomeDude: hifi: Yep.
icewaterman: MostAwesomeDude: could this be caused by DMAForXv option?
MostAwesomeDude: I didn’t even know that option existed. :3
hifi: MostAwesomeDude: would anything from the X1xxx-series work just fine?
icewaterman: MostAwesomeDude: it is on by default
hifi: like any R5xx chipset
MostAwesomeDude: hifi: Yes.
hifi: nice, I’ll definetly get a radeon card, good job all developeras and thanks to AMD for the documents
dmb: MostAwesomeDude: they still sell r5xx’s?
hifi: dmb: at least my local store sells new r5xx’s
MostAwesomeDude: dmb: Oh yeah. Laptops.
dmb: oh
dmb: thought the r5xx card i was using was ancient πŸ˜€
hifi: I paid about 75 euros for my nvidia card when I bought it and now I get a better radeon (even new) much cheaper with open drivers, so worth the buy
dmb: really hates allergies
dmb: ok, now to to work D:
MostAwesomeDude: Okay, so FSAA requires better mem management, per-poly AA requires some kind of deep VAP magic, and AF requires an fglrx dump with custom revenge.
MostAwesomeDude: …I should put up the revenge patch for z3ro.
glisse: MostAwesomeDude: what AF stands for ? πŸ™‚
rx__: anisotropic filtering?
glisse: rx__: right πŸ™‚
osiris_: MostAwesomeDud: to make revenge work for you, try reading FB location using mcind regs, just like it’s done in drm (see radeon_read_fb_location func in radeon_cp.c)
osiris_: *MostAwesomeDude
osiris_: that was the case for my gpu (rs690)
MostAwesomeDude: osiris_: Yeah, I’ll try that.
nh_: osiris_: I just saw CHROMA_KEY_MODE in the texture register documentation (p.51 of the R3xx-spec) which claims to have a mode ChromaKey that *kills* every pixel matching the chroma key in the texture
nh_: osiris_: Not sure if this actually works, but if it does, it’d certainly beat using a fragment shader for line stippling
glisse: nh_: neat πŸ™‚
osiris_: nh_: r3xx spec? when were those docs released?
nh_: quite some time ago
nh_: http://www.x.org/docs/AMD/
nh_: but I believe all the texture-related registers are exactly the same
nh_: (actually, I noticed a “Filter4” in the TX_MAG_FILTER for r5xx, but I have no idea what that’s supposed to mean)
osiris_: damn, and all this time I was trying to understand r300 hardware by studying r300 dri code 😐
nh_: osiris_: actually, you’ll probably still have to sample from the texture using an injected TEX instruction, but we’d no longer have to have an explicit KIL instruction if the ChromaKey stuff works
hifi: osiris_: fix the low impact issues with r3xx and you’re my new god
nh_: osiris_: heh, don’t get your hopes up too much; the R3xx “spec” is basically just a list of registers
osiris_: hifi: I don’t even fully understand graphic pipeline, so it will be good if will be able to do stipple lines
hifi: my friend tried to knock down stipple lines but it didn’t quite work
nh_: why do I get the feeling that the filter configuration for textures is wrong?
nh_: *sigh*
nh_: and there is a rather curious bug where cube texturing selects an incorrect mip level
nh_: ah no, it’s not just an incorrect mip level, we’re most likely getting the memory layout wrong
abhi-1: hi can i get ATI drivers for openolaris BUILD_86
rschmidt: hi guys, I’m trying to get the radeon driver working on a Samsung 460Dxn TV with a built-in computer. I have Xorg 1.4.0.90 and the latest driver from git. X starts but never displays anything on the screen (text console disappears but output remains black).
rschmidt: I know that internally, the screen is connected to the video card via an LVDS cable. Is there a way for me to check if LVDS is working, or force the card to try to use that output?
Buggaboo: hi guys
Buggaboo: can the radeonhd driver pivot the screen yet?
Buggaboo: I read the docs on the x.org website, I don’t know how old that stuff is.
andrew__: hi, can i get DRI-works with the open-source driver on my radeon x1250?
Buggaboo: It states that it doesn’t yet. But I don’t know how fast things progress.
adamk: andrew__: Theoretically it’s supported, but unless someone has actually tried it and confirm that, there’s really no guarantee that it will work.
adamk: But it should πŸ™‚
osiris_: andrew__: it works for me
andrew__: oh…can u post your xorg.conf?
osiris_: andrew__: it’s standard file with one line added in Device section: Option “AccelMethod” “EXA”
andrew__: ok, and what driver do u use? radeon or radeonHD?
osiris_: andrew__: radeon, git version
andrew__: but where can i get git version of radeon driver?
osiris_: andrew__: which distro are you using? if ubuntu there is repo with xorg bleeding edge packages
andrew__: gentoo
andrew__: lol
andrew__: i can’t find any man page about driver installation
andrew__: can u give url?
osiris_: andrew__: git://anongit.freedesktop.org/git/xorg/driver/xf86-video-ati
osiris_: for proper exa acceleration you also need current version of xserver
osiris_: and check if you have new enough drm modules (modprobe radeon and then check if there are any files in /dev/dri/. if there is none, you need newer drm)
andrew__: big thnx!
Terman: Buggaboo: no, it can’t
nh_: z3ro_: Didn’t you say at one point that fragment.position doesn’t work correctly for r3xx?
nh_: z3ro_: if so, I’d appreciate it if you could point towards a testcase, because piglit has a test for fragment.position that passes
Buggaboo: Terman, okay thanks. I shall buy it in the future. Just not right now. Thanks.
kristian_: I’m having trouble with my r500, most of the time when I quit X my console is full of stripes. The only thing that’s possible then is to reboot the system. Is this a known problem?
glisse: kristian_: my wild guess is the tilling is still enabled
glisse: or surface tilling
kristian_: I also having troubles getting DRI working, I’m running the git(master) versions of mesa,drm and the driver and no errors or warnings are stated in the Xorg logs.
kristian_: When running glxinfo it says to enable LIBGL_DEBUG=verbose to get more information but it seems to have no effect either on the glxinfo command or when exporting it prior to launching X
nh_: kristian_: LIBGL_DEBUG=verbose should at the very least give a message like “libGL: OpenDriver: trying …../r300_dri.so”
nh_: unless DRI isn’t enabled
nh_: but then you should find appropriate messages in /var/log/Xorg.0.log
kristian_: nh_: It says: [dri] Found DRI library version 1.3.0 and kernel module version 1.29.0 and then continues to map memory and stuff
kristian_: and if I check dmesg drm seems to have loaded fine
nh_: do you get a message like “[DRI] installation complete” and further down “Direct rendering enabled” in Xorg.0.log?
nh_: and what does xdriinfo say?
kristian_: [dri] Visual configs initialized
kristian_: that’s the last dri message
kristian_: I see a Direct rendering enabled also
nh_: then LIBGL_DEBUG=verbose glxinfo must give you *more* output than plain glxinfo (the additional output is at the top, by the way)
kristian_: nh_: I’m afraid it gives nothing
nh_: 1) are you sure glxinfo is not some really ancient version?
nh_: 2) what output do you get from xdriinfo and glxinfo?
nh_: (and add the LIBGL_DEBUG=verbose in for good measure)
kristian_: xdriinfo says libGL is too old
nh_: bingo πŸ™‚
kristian_: nh_: where can I get a newer version of libGL?
kristian_: shouldn’t it be part of mesa?
nh_: it is
kristian_: I do have the mesa git master version
nh_: you might have installed mesa in /usr/local, and you’re still getting an old one from /usr or something
nh_: ldd /usr/bin/xdriinfo tells you which libGL it loads
kristian_: nh_: Yes that’s it
kristian_: nh_: Just noticed, sorry for bothering
nh_: πŸ™‚
nh_: now if you could return the favour and help me figure out how the GPU wants cubemaps layed out in memory? πŸ˜‰
kristian_: nh_: I don’t think I can help you there, unless you wan’t me run some software with my card…
nh_: nah, I was just kidding
nh_: hopes you can get dri running on your system
kristian_: thanks
kristian_: nh_: Now it works, thanks again.
nh_: np
psofa: does the radeon driver support hd3200 +xvideo?
rx__: 3200.. is that an integrated part?
psofa: yes
psofa: on 690 chipset
psofa: im just setting up the new system with that card intergrated so i thought of trying it first before putting my old nvidia card
nh_: committed various changes to texture management that should improve (though not completely fix) cubemapping
kristian_: nh_: Are they for the r500 cards too?
psofa: rx__, ?
nh_: kristian_: I don’t have an r5xx to test on, but as far as I can tell the texture units of r3xx and r5xx are pretty much identical, so yes, it probably improves r5xx as well
kristian_: nh_, Then I’ll guess I should upgrade my mesa version
nh_: in the long run, definitely
rx__: lessee..
nh_: the piglit texCube test still fails… oh well.
nh_: I’ll have to find some way to figure out the memory layout of small miplevels
nh_: but not today
rx__: psofa; i believe it is supported
rx__: oh
psofa: rx__, do you know where i can find some more info the wiki just says : R500/R600 class chips initial support
rx__: uhm.. the source code?
damentz: hmm, is anything faster with r100 in mesa 7.1.*?
damentz: or is it all basically r300+ updates?
rx__: check git log
damentz: rx__: hmm, i guess not
damentz: rx__: what about this T core thing i keep hearing about?
rx__: tcore is for setting up 2d/3d and a few misc other things
rx__: not much in the way of optimization
rx__: i think it’s more of a “testing framework”
dmb: glisse: back
dmb: glisse: i can test your branch now
agd5f: power’s back on!!!
rx__: huh?
rx__: power outage?
bridgman: damentz: tcore is a simple driver we use for testing GPUs before we have silicon
bridgman: it’s the first driver we write; runs on simulators, emulators, or real silicon
bridgman: doesn’t do too much; mostly initializes the chip and waits for a test program,
bridgman: but the way to think about it is “sample code for initializing the GPU”
rx__: oh
rx__: there you go
bridgman: we see it mostly being useful for writing the initial drm code for 6xx
rx__: finally someone bothers to correct me πŸ™‚
bridgman: I thought you were pretty close; I was just adding colour πŸ˜‰
bridgman: I can’t do IRC from work, and agd5f hasn’t had power for 2-1/2 days
bridgman: yet I’m the one who lives in the sticks πŸ˜‰
rx__: amd should budget more for amd gpgp πŸ™‚
rx__: gpg
rx__: even
bridgman: it’s a pretty fair budget already
rx__: what happened to complaining about manpower?
rx__: πŸ™‚
bridgman: complaining takes time and we’re too busy πŸ˜‰
bridgman: seriously I think we’re through the worst of it; we’re very close on 6xx and
bridgman: I think we already have a pretty good handle on the work that needs to be done
bridgman: ** 6xx docs not 6xx 3d finished **
rx__: of course
rx__: hm.. no power must be worse than no internet
bridgman: especially when you need power for the internet (dsl modem) πŸ˜‰
bridgman: at least agd5f had a gas water heater
bridgman: but no gas a/c
bridgman: note to self: get generator back from brother-in-law
bridgman: note to self: don’t tell agd5f I have a generator
michaellarabel: So why was agd5f’s power out to begin with?
bridgman: big storm, couple of tornados, lots of trees falling on power lines
michaellarabel: Ah
bridgman: 250,000 people without power apparently
bridgman: all crowding into the coffee shop to use the wifi
bridgman: along with agd5f
bridgman: guess it would have been worse later in the summer
bridgman: time to crash, or at least take the cover off the a/c
bridgman: bye
MostAwesomeDude: kicks Ubuntu
dmb: does gas a/c exist?
Magnade: yes
Magnade: its based off the idea of how propane refrigerators work
Magnade: unless your lucky enough to be in a dry climate and can use a swamp cooler instead then the generator would do just fine
dmb: never heard of propane refrigerators either
dmb: does it actually burn the propane?
Magnade: uses a small flame afaik
Magnade: works with ammonia
Magnade: so most people consider it evil prob
dmb: whats wrong with ammonia?
MostAwesomeDude: dmb: Toxic.
dmb: thats pretty cool though, gas powered a/c
dmb: MostAwesomeDude: well, so is propane
dmb: MostAwesomeDude: you try reproducing my issue yet :D?
Magnade: look on wikipedia for absorption refrigerator
dmb: or still have important windows open
MostAwesomeDude: dmb: It’s been a long day. What wasn’t working again?
dmb: MostAwesomeDude: skyrocket screensaver
MostAwesomeDude: Oh, right.
MostAwesomeDude: :3
Magnade: what would be nice is if we started seeing solar ac units using that idea
dmb: in gnome-screensaver
dmb: chances are, it was only me that it will crash
Magnade: power wise all you would need then is fan for moving air
dmb: its hard for me to reproduce things
MostAwesomeDude: dmb: Lemme see if I already see it.
dmb: i have no hard drive, only a livecd (hd just got busted)
dmb: Magnade: is it possible to use reverse radiators then?
dmb: have the radioator on the ceiling
Magnade: you could do that for 1 room and just let convection move the air about
Magnade: doing whole house that way would be pricey i think
Magnade: easier to use duct work and a fan
dmb: i know they have a really cool method of cooling where they have a radiater system underground
dmb: and it cools the floors somehow
damentz: do any of you guys know what the T-core from amd is for?
dmb: damentz: tcore is a simple driver we use for testing GPUs before we have silicon
dmb: it’s the first driver we write; runs on simulators, emulators, or real silicon
dmb: doesn’t do too much; mostly initializes the chip and waits for a test program,
dmb: but the way to think about it is “sample code for initializing the GPU”
damentz: ah, sorry didn’t see that
damentz: right
damentz: are any of you guys working with fglrx?
MostAwesomeDude: damentz: Unfortunately, yes.
rx__: you mean.. using?
MostAwesomeDude: I’m doing a bit of RE on it.
damentz: nah, like doing some code or something
rx__: using it until agd5f merges his powerplay changes
damentz: ok so i have some bug…
damentz: fglrx gets mouselag with low-latency preemption
damentz: as opposed to voluntary kernel preemption
MostAwesomeDude: damentz: No, none of us are fglrx devs (except maybe agd5f, I don’t know?)
rx__: nope
MostAwesomeDude: And fglrx issues should prolly be taken to #ati.
rx__: even agd5f doesn’t touch fglrx
rx__: πŸ™‚
damentz: ah
dmb: isn’t bridgeman a fglrx dev?
MostAwesomeDude: dmb: He’s da guru.
damentz: i think he’s just he’s just some sort of manager of something
damentz: i don’t think he does any actual coding
rx__: s/bridgeman/bridgman/
rx__: i’m sure he did code for it at one point
rx__: not certain if he still does
damentz: its odd though, i have to recompile my kernel for voluntary kernel preemption, and it works just fine
dmb: oh oops πŸ˜€
damentz: not sure what the driver is doing to add additional latency to input devices with a real time kernel
damentz: or pseudo realtime
MostAwesomeDude: damentz: Sometimes it’s better not to know.
damentz: MostAwesomeDude: can’t they look at the open source driver for some things
damentz: like exa for instance
damentz: exa is bloody fast on r300 the last time i checked
Magnade: dmb: ground pump its just an ac unit but rather than sending the hot out via air it sends it via a liquid underground and lets the earth suck away the heat
MostAwesomeDude: damentz: There’s next to no similarities between fglrx and the open-source stack.
dmb: interesting
damentz: in fact with greedy migration heuristics, 2d acceleration is still fast w/ compositing
damentz: though, i have 256mb of video ram
MostAwesomeDude: fglrx is a massive piece of code in order to make 3D performance as fast as possible.
damentz: ohhh
damentz: so it’s done mostly in assembly?
dmb: Magnade: i know this is different, but heat pumps are pretty cool
MostAwesomeDude: damentz: No, just lots and lots of C.
dmb: had one in my dorm
dmb: uses reverse air conditioning for heat
damentz: hmm, well i hope they release some code to mesa to optimize r100 and up
dmb: MostAwesomeDude: you think our driver will ever be as fast :D?
MostAwesomeDude: bridgman once counted it up; we have about 100 klines of code total for the Radeon Mesa/DDX/DRM path.
MostAwesomeDude: fglrx has about 15 mlines of code.
damentz: damn
MostAwesomeDude: dmb: Yes. :3
damentz: thats insane
Magnade: dmb: yeah their nice to bad not many places know how to install them
rx__: dmb; in some cases.. i guess in the areas of 2D radeon is already faster
damentz: nvidias driver is pretty small though
damentz: or it seems to be smaller
damentz: oh wait, they split their drivers
damentz: current, legacy, uber legacy
dmb: MostAwesomeDude: from what i here, compiz (when it works) has better performance on open source r5xx (scroll bars etc) then fglrx and compiz
damentz: dmb: it does
damentz: on r300 it does
MostAwesomeDude: dmb: That’s because of the way fglrx works with Composite.
dmb: Magnade: ours was like a window air condioner, but instead of it being an air conditioner, it was a heat pump
dmb: in air condioning mode, does a heat pump function just like a normal ac unit?
Magnade: dmb: basicly just rather than blowing hot air out it puts the hot liquid into the ground
Magnade: dmb: normal window ac units are just a heat pump with radiators on both sides ground pump the radiator is the ground
dmb: oh
dmb: i think my dorm’s ac was not a ground pump one
damentz: hmm, i ran suspend to disk on my laptop and it just reconnected to my wireless work
damentz: way to be useless i guess
dmb: especially since it was on the eighth floor, i doubt they had 250 pipes going into the ground πŸ˜€
damentz: ah! i forgot to set the resume partition
dmb: time to try glisse’s non-hardlock branch!
Magnade: dmb: if they could drill before the place went in they could of sunk several 100ft deep pipes and let rooms share the pipes
dmb: don’t know
Magnade: id doubt it personally
dmb: i opened it a couple times, don’t know if i saw anything that looked like a pipe going towards the ground
dmb: all i know is the compressor turned on in heat mode
Magnade: yeah just works in reverse
dmb: and if the temp was more then 3 degrees, it switched to electric heat mode
dmb: and thats when our room would smell like it was burning πŸ˜›
Magnade: it would burn off all the dust that was collecting all year
dmb: yup
dmb: tbh, the heat coming out from the electric heat was a lot hotter then when in heat pump mode
dmb: i guess heat pump mode is supposed to save energy
Magnade: it might i never looked into
dmb: we did some serious damage to our unit, such as using the air conditioning when it was below 20F outside
dmb: every once in a while it would freeze up and shut off
Magnade: still worked after that?
dmb: yup
MostAwesomeDude: Finally fixing LIT.
dmb: MostAwesomeDude: LIT?
rx__: figured it out?
MostAwesomeDude: Ish. I’m throwing out all the r3xx stuff and just putting together a very straightforward implementation.
MostAwesomeDude: Can optimize it later.
MostAwesomeDude: Like, say, when we move to Gallium.
dmb: MostAwesomeDude: for r5xx?
dmb: so no more being based on r3xx?
rx__: dmb; LIT is an instruction
rx__: http://oss.sgi.com/projects/ogl-sample/registry/ARB/fragment_program.txt
dmb: oh
rx__: see 3.11.5.13
dmb: i was way off
MostAwesomeDude: dmb: It’s just a complex, rare instruction, that we weren’t doing right.
MostAwesomeDude: But since nobody uses it, I wasn’t super-worried.
MostAwesomeDude: But while I’m waiting for my Ubuntu, I’m getting bored, so I’m fixing it.
rx__: setting up your RE environment?
rx__: πŸ˜›
MostAwesomeDude: rx__: Trying.
dmb: i made a nice bash script for ubuntu that grabbed the latest git for drm, mesa and the ati driver, compiled then and installed them
dmb: but i lost it
dmb: in my hard drive crash πŸ™
MostAwesomeDude: Aw.
dmb: i may make it again
dmb: because everytime i reboot, i’m back to scratch again (i’m using livecds while i wait for my new hd to come in)
dmb: MostAwesomeDude: fglrx is pretty easy to install in ubuntu πŸ˜€
MostAwesomeDude: dmb: So I hear.
MostAwesomeDude: That’s pretty much my entire train of thought.
dmb: with restricted driver manager, it will install it with one click
dmb: (or 2)
MostAwesomeDude: Oh, I hope so.
dmb: its not the latest, but it works
MostAwesomeDude: Too bad it takes FOREVER to install.
dmb: Desktop cd?
MostAwesomeDude: Yep.
dmb: all linux distros take forever to install
MostAwesomeDude: ‘Cept Gentoo.
MostAwesomeDude: Takes an eternity.
dmb: yup
rx__: hahaha
MostAwesomeDude: And that’s assuming you started it Last Thursday.
dmb: i used to be a avid gentoo user
dmb: then i got lazy and got into debian
rx__: <3 gentoo
dmb: also, last time i checked, there was some corruption in the leadership in gentoo land
MostAwesomeDude: Just a bit.
dmb: wow, git is pulling fast today
dmb: MostAwesomeDude: http://pastebin.da4.org/284
dmb: that may help you so you don’t have to research all the things you need to install etc
MostAwesomeDude: Huh. Cool.
dmb: its more of just a procedure run as a shell script because i’m lazy πŸ˜›
dmb: now, how do i change to a different head in git again?
dmb: i know i always ask that question, i can never remember, and the git docs are horrible
rx__: different branch?
dmb: yes
rx__: something like git checkout -b origin origin/branch-name
MostAwesomeDude: rx__: Not quite.
MostAwesomeDude: git checkout -b origin/
rx__: guess i need to work on my git foo ..
rx__: yeah that
rx__: :/
MostAwesomeDude: Hehe, yeah, we all do.
dmb: so git checkout -b radeon-lockup-free origin/radeon-lockup-free would work/
MostAwesomeDude: Yes.
dmb: ok
z3ro_: well, that was scary… driving home in pretty much a snow blizzard. =/
z3ro_: was kind of fun driving along with trance playing until it got hard to see other cars. πŸ˜›
rx__: hahaha
dmb: i really wish i could have snow right now
dmb: instead its going to be a high of 96F tomorrow for me
MostAwesomeDude: Hmm, LIT test stuff looks SO much better.
z3ro_: I just test out nh’s cubemap fixes, too… I might actually be able to get a skybox going this time. πŸ™‚
dmb: trying 3d again
z3ro_: I actually thought about a particle engine while driving home in the snow…
z3ro_: I think that confirms geek status. πŸ˜‰
MostAwesomeDude: Oh, haha, I know why LIT doesn’t work!
z3ro_: oh?
MostAwesomeDude: CMP is the problem.
MostAwesomeDude: LIT needs x > 0, but Radeon CMP is x >= 0, which won’t render right for tri-lit.
z3ro_: I see. there must be a work around though?
MostAwesomeDude: CND would provide X > 0.5, which would help if you remember that we have a 0.5 swizzle for Radeons.
MostAwesomeDude: But that would be another inst.
MostAwesomeDude: I think.
z3ro_: hmm so radeon doesn’t implement CMP as the ARB spec says?
MostAwesomeDude: I’ll think on it. This is definitely one of those things that we have fp->optimization for.
MostAwesomeDude: z3ro_: Radeons implement an ARB-compatible CMP.
MostAwesomeDude: ARB is: (A < 0) ? B : C
MostAwesomeDude: Radeon is (C >= 0) ? A : B, which becomes (C < 0) ? B : A
MostAwesomeDude: The problem is that we need a different kind of comparison, which ARB doesn’t directly provide.
dmb:


Powered by Phoronix Media.
All trademarks used are properties of their respective owners. All rights reserved.