IRC log for #brlcad on 20080304

02:37.55 brlcad nope
03:17.28 *** join/#brlcad Twingy (n=justin@74.92.144.217)
06:32.13 *** join/#brlcad Z80-Boy (n=clock@217-162-111-154.dclient.hispeed.ch)
06:32.38 Z80-Boy My infamous model: Frame 0: 4720128 rays in 26011.79 sec = 181.46 rays/sec (wallclock)
06:32.46 Z80-Boy And that's a COre 2 Duo 2.2 GHz
07:33.36 *** join/#brlcad Axman6 (n=Axman6@pdpc/supporter/student/Axman6)
07:59.53 *** join/#brlcad clock_ (n=clock@zux221-122-143.adsl.green.ch)
08:00.45 clock_ hi all
10:47.28 *** join/#brlcad elite01 (n=elite01@dslb-088-070-001-048.pools.arcor-ip.net)
11:25.58 *** join/#brlcad d_rossberg (n=rossberg@bz.bzflag.bz)
11:34.52 brlcad wow, that is incredibly slow
11:38.47 clock_ brlcad: I hope you can look at the model which causes this and see the cause
11:38.53 clock_ now I am leaving for lunch sorry
12:28.30 *** join/#brlcad illethal (n=oden@c-69-137-199-63.hsd1.fl.comcast.net)
12:49.06 *** join/#brlcad Elperion (n=Bary@p54877627.dip.t-dialin.net)
13:39.18 illethal Hello fellow humans of Earth!
13:40.48 ``Erik �/det
13:41.11 ``Erik heh
13:41.19 ``Erik no hello for me, illethal? *cry* :D
14:02.42 *** join/#brlcad elite01_ (n=elite01@dslb-088-070-001-048.pools.arcor-ip.net)
14:05.25 *** join/#brlcad clock_ (n=clock@zux221-122-143.adsl.green.ch)
14:46.08 *** join/#brlcad MinuteEl1ctron (n=MinuteEl@bz.bzflag.bz)
14:58.25 *** join/#brlcad MinuteElectron (n=MinuteEl@silentflame/member/pdpc.base.minuteelectron)
15:04.30 *** join/#brlcad poolio_ (n=poolio@bz.bzflag.bz)
15:04.48 *** join/#brlcad MinuteElectron (n=MinuteEl@silentflame/member/pdpc.base.minuteelectron)
15:08.21 *** join/#brlcad cad84 (n=91486201@bz.bzflag.bz)
15:13.49 *** join/#brlcad d_rossberg (n=rossberg@bz.bzflag.bz)
15:16.58 CIA-32 BRL-CAD: 03d_rossberg * r30449 10/brlcad/trunk/src/irprep/Makefile.am: put irdisp neatly under WITH_X11 condition
15:23.36 *** join/#brlcad elite01 (n=elite01@dslb-088-070-001-048.pools.arcor-ip.net)
15:37.46 *** join/#brlcad brlcad (n=sean@bz.bzflag.bz)
15:49.14 *** join/#brlcad tofu (n=sean@bz.bzflag.bz)
15:51.55 ``Erik quit pissing peer off, dude, he'll jack you up
15:53.09 *** join/#brlcad jgay (n=jgay@fsf/staff/jgay)
15:56.45 clock_ brlcad: yes I have 118 pixels per second
15:57.00 clock_ brlcad: it's the strange model that causes 210x slowdown
15:57.28 clock_ http://ronja.twibright.com/3d/headcut.g object name headcut
15:58.59 brlcad clock_: I'm aware of the model, and had looked at it
15:59.02 brlcad and commented on it
15:59.08 brlcad or have you forgotten?? :)
15:59.17 ``Erik neat, bus error
15:59.20 clock_ I faintly remember you have commented on it
15:59.22 clock_ but not what you said
15:59.30 clock_ A fact is it's still hell slow
15:59.36 clock_ is it gonna stay this slow?
16:00.44 brlcad it's slow for several reasons -- the biggest of which relates to how it's modeled -- you can get the same shape with a different hierarchy and probably get back much of the performance
16:00.49 brlcad you're more than 210x slower
16:00.55 brlcad you're mixing two different issues
16:01.30 clock_ can't the program transform the hierarchy into the more efficient one automatically?
16:01.42 ``Erik cuz that's insanely complex to do?
16:01.49 brlcad clock_: go for it
16:02.21 brlcad :)
16:02.22 clock_ So now I have to do a insanely complex thing with my model to get back some of the performance?
16:02.41 ``Erik insanely complex to automate correctly
16:02.58 clock_ how should I change the hierarchy?
16:03.09 ``Erik if we could do that reasonably, we could also convert polygon soup to csg reasonably
16:04.36 brlcad usually just balancing the csg tree will do wonders particularly if it's deep
16:05.05 brlcad but the better opt involves looking at the shapes and bounding boxes of the shapes being used
16:05.05 clock_ No it's shallow
16:05.07 clock_ like 3 or 4
16:05.32 brlcad er, not that I recall..
16:06.22 brlcad gah, it's hard as heck to chat right now
16:06.30 brlcad isp is being attacked
16:06.34 ``Erik well, it may be disguised
16:06.51 ``Erik if you, say, union 16 things all together at once, it looks like one level, but it's actually at least 3
16:07.10 ``Erik er, 5
16:07.32 clock_ But it has a lot of things in one node
16:07.36 ``Erik the actual csg structure is all leaf, unary or binary
16:07.38 brlcad and depending on the ops and the way they're input, you might even end up with 16 levels
16:08.00 clock_ Balancing a tree isn't an insanely complex operation
16:08.11 clock_ It has the insane complexity of second year of the university
16:08.14 ``Erik but it's an ordered tree
16:08.25 clock_ what's an ordered tree?
16:08.26 ``Erik if you change the order or even position, you change the semantic
16:08.47 clock_ not for unions
16:09.04 brlcad clock_: so then seriously .. code it up, you're being given the simple explanation just for sake of explaining it
16:09.04 clock_ not for logical ANDs
16:09.26 ``Erik ok, imagine if you have, say, a union, then you use that union to cut from another object, that makes one shape... but if you cut, then union, say through a tree balancing, it's the same operations, but you get a different shape
16:09.48 clock_ I have an impression now that BRL-CAD contains some kind of simple straightforward unoptimized implementation that goes off on heavily unbalanced trees
16:09.52 ``Erik and I think for simple union, we do balance?
16:10.44 brlcad clock_: actually the csg processing is *heavily* optimized, one of the tightest you'll find anywhere
16:10.56 brlcad but in this particular instance, there is other stuff going on
16:11.20 ``Erik the next step in optimizing is worth a fair number of doctorates, I'd imagine :/
16:11.22 brlcad several issues, one being the construction hierarchy, other issues being the bounding volumes iirc
16:11.40 clock_ Do I imagine CSG correctly as firing a ray, intersecting with all primitives their bounding boxes the ray hits, and then finding the first visible intersect according to the logical operations?
16:11.44 ``Erik perhaps np complete, even
16:12.21 clock_ My scene has no reason to be difficult
16:12.28 clock_ It's a stack of cylindrical slices
16:12.36 clock_ and the stack is cut in half with a large primitive
16:12.42 brlcad clock_: no, it's considerably more complex than that -- there is spatial partitioning to determine which bounding boxes to test against
16:12.46 clock_ Every cylindrical slice has a tiny bounding box
16:13.00 brlcad if you did what you suggest of "intersecting with all primitives their bounding boxes the ray hits" it would be horrendously slow
16:13.14 clock_ so every ray hits only through small amount of slices unless you are looking close to the axis
16:13.22 brlcad depending on how you actually determine which bounding boxes it intersects
16:13.26 clock_ The deadly picture isn't AFAIK looking along the axis
16:14.00 ``Erik whoa
16:14.11 brlcad clock_: I believe itss that large primitive that is killing it
16:14.26 clock_ is it so complex to calculate an intersection with a cube?
16:14.28 brlcad by doing that, it basically has to evaluate every primitive every time
16:14.33 ``Erik does 'head' raytrace fast?
16:14.40 clock_ yes
16:14.42 clock_ fast as hell
16:14.44 ``Erik (and did anyone do a tree on head? jfc)
16:15.43 clock_ Or maybe the bounding boxes are evaluated too liberal?
16:15.58 clock_ Like saying a tiny slice of metal with a huge negative box give a bounding box of the negative box?
16:16.22 ``Erik Frame 0: 263441 rays in 12.24 sec = 21527.96 rays/sec (RTFM)
16:16.25 clock_ For an AND it's good to at least take the bounding box of the smaller part
16:17.27 ``Erik definitely the massive boolean overload from having the slice at that position :/
16:17.46 clock_ I can't put the slice elsewhere sorry
16:17.57 clock_ The idea is to show where the bolts are going through
16:18.05 ``Erik without the cutter
16:18.06 ``Erik Frame 0: 262165 rays in 0.04 sec = 6802545.46 rays/sec (RTFM)
16:18.18 clock_ why do you get 21527 rays and me 118?
16:18.23 clock_ I have 2.2GHz Core Duo
16:18.28 ``Erik cuz my machine is moar awesomer
16:18.31 clock_ What do you have?
16:18.35 ``Erik 8 3ghz cores
16:18.41 illethal That is awesome.
16:18.44 illethal Octcore?
16:18.53 clock_ ZX Spectrum with a secret tape of Manic Miner picked from the wreckage of US 193?
16:19.02 clock_ octopus
16:19.02 ``Erik two quadcore xeons, beefy mac pro
16:19.20 ``Erik makes a nice footrest, too
16:19.21 clock_ OK
16:19.44 clock_ Do you understand the mechanism of the slowdown?
16:19.47 ``Erik if you made, say, a hundred small cutting boxes, the scnee would go much faster
16:19.48 ``Erik yes
16:20.07 clock_ why would making hundred small ones help?
16:20.25 ``Erik because right now, your big cutting box is in the tree making the bounding volume include everything
16:20.34 ``Erik so every single pixel must evaluate every single primitive
16:20.41 ``Erik and weave all of them together
16:20.51 ``Erik you've effectively eliminated space partitioning
16:21.00 clock_ so if you have a 3mm part and cut it with a 1m cube, the bounding box inflates to 1m?
16:21.07 ``Erik yes
16:21.24 clock_ Whoa! What algorithmic motorization! Secret trick, dude: if you subtract from something, it never gets bigger
16:21.49 ``Erik yeah, but what if that 1m cube not only clips out part of that 3mm part, but ALSO part of the other 3mm part over there
16:22.12 ``Erik until evaluated, there's no way to know what primitives that subtraction impacts
16:22.22 ``Erik YOU know, because you're modelling it,but the software CANNOT know
16:22.47 clock_ OK jokes about pinnacle of development back let's assume it's really serious
16:23.12 clock_ Let's say I have a scene with zillion tiny slices and one big cube that subtracts (eats off) half of each slice
16:23.29 clock_ I fire a ray
16:23.49 clock_ Now I take one primitive after another, check it's bounding box and possibly calculate intersection
16:28.03 clock_ ``Erik: what the software knows is that the cube is always the same cube so it doesn't have to calculate it million times
16:35.33 clock_ What the software also know is that zillion parts cut with one cutter equals zillion results of (part cut with the cutter)
16:36.02 clock_ or more precisely can know, if programmed thusly
16:38.10 illethal Dang how do I compile this.
16:52.18 clock_ illethal: do you have an error?
16:52.22 illethal I type make install
16:52.26 illethal but it does nothing, I'm su.
16:52.33 illethal It says no targets.
16:52.36 clock_ did you do make before?
16:52.38 illethal What directory do I have to be in?
16:52.46 clock_ in the toplevel brl-cad
16:52.50 illethal Doesn't do anything either
16:53.19 clock_ What I do is unpack tgz, configure, make, make install
16:53.20 clock_ it works
16:53.23 clock_ on Linux and OpenBSD
16:53.27 clock_ what system do you have?
16:53.29 illethal Linux
16:53.33 illethal Ubuntu 64
16:53.37 clock_ oops 64
16:53.54 clock_ heard that a lots of things don't work on 64
16:54.14 illethal Ahhhh a lot do actually.
16:54.25 illethal Just Flash is meh.
16:54.40 illethal nspluginwrapper crap. It works for 30 mins them breaks, then I have to recompile.
16:55.29 illethal root@valhall:/home/oden/Desktop/progs/usr# make
16:55.31 illethal make: *** No targets specified and no makefile found. Stop.
16:55.40 illethal arg
16:55.42 illethal wrong dir
16:55.54 illethal Still
16:55.58 illethal Doesn't do anything wtf.
16:56.05 clock_ maybe it's a demo version
16:56.10 clock_ after 30 seconds you have to buy a licence?
16:56.21 clock_ My Firefox crashes
16:56.29 clock_ That's normal that Firefox is a piece of crap
16:56.34 illethal Everything else works fine except flash for me.
16:56.38 clock_ oh 30 minutes you wrote not seconds sorry
16:56.45 clock_ My flash works but often crashes
16:56.58 clock_ And brings down the whole Firefox. It hangs and stops refreshing the window
16:56.58 illethal Adobe needs to burn.
16:57.03 clock_ I have to kill it lose all my open tabs
16:57.15 clock_ Adobe is piece of crap
16:57.16 illethal What distro you on?
16:57.22 clock_ Linux From Scratch
16:57.34 illethal From Scrath?
16:57.39 clock_ yes
16:57.40 illethal Like you made your own os?
16:57.46 illethal Or modified/whatever?
16:57.49 clock_ compiled
16:58.08 clock_ LFS is a web instructions where they tell you what to type to compile everything from scratch
16:58.18 illethal Cool.
16:58.19 clock_ kernel, gcc, glibc,...bash,...,firefox,...
16:58.26 illethal Ubuntu is pretty unstable.
16:58.28 illethal Imo.
16:58.37 illethal I think I'm going to switch to gentoo.
16:58.45 clock_ Friend had an Ubuntu and he typed locate and locate segfaulted
16:58.53 illethal Yeah.
16:59.03 clock_ I had gentoo but every time I upgraded it blew up about 5 times and I had to try secret tricks from google
16:59.14 illethal haha
16:59.16 clock_ sometimes the tricks didn't work so I had to google up a different remedy etc.
16:59.19 clock_ It's a load of bullshit
16:59.25 clock_ Then I ditched gentoo and tried OpenBSD
16:59.30 clock_ Also exploded when I upgrded
16:59.31 illethal Well my bro uses gentoo more than ubuntu. So if I need help I've got it.
16:59.41 clock_ So now I have LFS. I had LFS for years before and I was basically happy
16:59.45 clock_ So now I am happy again :)
16:59.49 illethal I havn't upgraded in a long ass time.
16:59.52 illethal I'm still on feisty.
17:00.17 illethal Ubuntu has such gay names.
17:00.21 illethal Gutsy Gibbon lol
17:00.28 clock_ Software today is piece of crap. Load of bullshit. Heap of trash.
17:00.48 clock_ I am gay
17:00.59 clock_ you shouldn't use the word "gay" as a synonym for something bad or laughable
17:01.14 illethal You're a homosexual.
17:01.22 illethal Not gay =P
17:01.22 clock_ Yes that too
17:01.28 clock_ No I am gay
17:01.34 illethal You could be a manic depressed homosexual!
17:01.44 clock_ you could be Manic Miner
17:02.39 illethal Don't mean to offend you buddy.
17:02.39 clock_ Yeah sure I know
17:02.39 clock_ you just didn't care to offend all gays in the world
17:03.23 illethal You mean homos.
17:03.33 clock_ I know what I mean
17:03.35 clock_ you can't know it
17:03.50 illethal Homos are gays. Heteros are Sads.
17:04.38 clock_ yeah you have all those wifes shopping babies etc.
17:04.45 clock_ changing diapers
17:04.49 clock_ kindergartens
17:05.41 illethal Gays like to shop too I thought.
17:05.50 clock_ Especially the camp ones
17:05.53 illethal Could just be a stereotype.
17:06.17 clock_ Buy a lot offancy crap to hook up on their HIV-soaked promiscuous bodies
17:06.36 illethal Exactly.
17:06.43 clock_ I don't like promiscuous gays
17:06.45 illethal To each his own.
17:06.53 clock_ I read 1 of 6 gays in the "scene" in Zurich are HIV+
17:07.36 clock_ sounds like I should walk only with rubber gloves protective goggles and a preservative already on in the street just for the case I passed by some of them
17:08.20 clock_ sounds like a promiscuity is a ticket to cemetery here
17:09.27 illethal Lol
17:09.36 illethal yeah that's groooooooz
17:09.52 clock_ 1 in 6 that's like the Russian Roulette
17:10.45 clock_ If they invent a vaccine for HIV they need to excavate a lot of earth for the storage tanks in the factory
17:10.58 illethal Haha
17:11.05 clock_ maybe build a pipeline
17:11.06 *** join/#brlcad MinuteElectron (n=MinuteEl@silentflame/member/pdpc.base.minuteelectron)
17:11.42 illethal Isn't Zurich in Switzerland?
17:11.51 clock_ ``Erik: did I offend you with my comment on pinnacle of 30 years of development?
17:11.56 clock_ yes Switzerland
17:12.15 clock_ in the news today in teh paper new in the train
17:12.21 clock_ they wrote the price of prostitution dropped
17:12.33 clock_ like 30 CHF (35 USD?) for a sex in the street
17:12.47 illethal http://micah.noobgrinder.com/builda.png
17:12.58 clock_ What's happening with our Zurich?
17:13.23 illethal Something I was working on a while ago.
17:13.27 clock_ Autodesk that's not BRL-CAD
17:13.35 clock_ do you want to use BRL-CAD for that?
17:13.59 illethal It's maya.
17:14.07 illethal 8.5
17:14.18 illethal I could probably never do that in BRL-CAD.
17:14.35 illethal All I can do in BRL-CAD is make a cube and move it's faces lol
17:14.44 clock_ yeah
17:14.59 clock_ nothing against BRL-CAD I like BRL-CAD even with the limitations it has
17:15.05 clock_ But I wanted to do a polygonal plate
17:15.16 clock_ So I asked brlcad and he advised me some secret command that was undocumented
17:15.22 clock_ Described the syntax in detail
17:15.32 clock_ I typed it I believe exactly as he said and it didn't work
17:15.59 clock_ Every now and then I run into some error in the doc, ambiguity or some topic not being covered at all
17:16.04 clock_ I also found a lot of segfaults
17:16.26 clock_ Like - it's still great - but these can be serious obstackles during work, especially for a novice
17:16.38 clock_ Now I have a problem if I do a cutaway view the rendering alsmost grinds to a halt
17:17.28 clock_ BRL-CAD people are great they fix all or most of the problems shortly after I find them
17:17.31 clock_ Especially segfaults
18:07.09 ``Erik nah, didn't offend me, I was out at lunch
18:08.05 ``Erik I'm hoping my contributions have removed a lot of the suck and modernized things a lot int he last few years, but *shrug* I'm only one codegod :D and smothered in bs politics and crap so I don't have much time to commit
18:15.26 clock_ ``Erik: the problem is my model is logically built
18:15.34 clock_ that means I first make a device like the optical head
18:15.46 clock_ and then I say now we want to look what's inside .... cut!
18:16.01 clock_ Thinking about the cut at the moment I make the screw is not appropriate.
18:16.07 clock_ Also because the script is made by an automatic script.
18:16.25 clock_ However, would it help if the cutting thing was composed of a larger amount of smaller subthings?
18:17.21 clock_ the script is made -> the bolt (screw) is made
18:46.26 CIA-32 BRL-CAD: 03bob1961 * r30450 10/brlcad/trunk/include/raytrace.h: struct dg_obj and supporting cast has been moved to dg.h
18:46.50 *** join/#brlcad docelic (n=docelic@212.15.184.79)
18:47.02 CIA-32 BRL-CAD: 03bob1961 * r30451 10/brlcad/trunk/include/dg.h: Initial check-in.
18:48.34 *** join/#brlcad poolio (n=poolio@bz.bzflag.bz)
18:48.54 CIA-32 BRL-CAD: 03bob1961 * r30452 10/brlcad/trunk/src/ (69 files in 5 dirs): Mods related to bio.h and the new dg.h wrt getting things compiled on Windows.
18:54.14 CIA-32 BRL-CAD: 03bob1961 * r30453 10/brlcad/trunk/include/raytrace.h: Move "drawable geometry" related function declarations to dg.h
19:02.44 CIA-32 BRL-CAD: 03bob1961 * r30454 10/brlcad/trunk/include/dg.h: Added function declarations.
19:50.43 *** join/#brlcad Elperion (n=Bary@p54877627.dip.t-dialin.net)
20:55.25 *** join/#brlcad elite01_ (n=elite01@dslb-088-070-003-070.pools.arcor-ip.net)
21:00.30 CIA-32 BRL-CAD: 03bob1961 * r30455 10/brlcad/trunk/src/librt/opennurbs_ext.cpp: Move include for bio.h after common.h
21:05.58 CIA-32 BRL-CAD: 03bob1961 * r30456 10/brlcad/trunk/src/libfb/if_wgl.c: Move include for bio.h after common.h
21:13.49 *** join/#brlcad jgay (n=jgay@fsf/staff/jgay)
22:18.54 ``Erik 1http://bash.org/?10626
22:24.48 ``Erik minus that first 1, of course
22:25.09 archivist cooking, whats wrong with beans on cheese on toast?
23:48.16 *** join/#brlcad Elperion (n=Bary@p548777EC.dip.t-dialin.net)
23:48.57 *** mode/#brlcad [+o brlcad] by ChanServ

Generated by irclog2html.pl Modified by Tim Riker to work with infobot.