irclog2html for #brlcad on 20070312

01:37.41 IriX64 interesting
01:38.11 IriX64 and obviously they keep adding to it.
01:40.07 IriX64 good to know i'm not in there, was worried for a moment :)
04:04.01 *** join/#brlcad IriX64 (n=mario_du@bas3-sudbury98-1168050142.dsl.bell.ca)
04:36.58 IriX64 brlcad just out of curiosity, does that magic number, is it returned from gl, and is it guaranteed to be the same on everybodys system?
04:38.13 IriX64 I took it out of my copy, and am curious if im breaking anything else?
04:38.33 IriX64 still compiling, i'll know soon.
04:49.24 Maloeran Magic variables as first member in structs are used to uniquely identify the chunk of data for debugging purposes
04:52.26 Maloeran Speaking of which, I find it strange that there's no global switch to disable these checks and remove the magic variables
05:07.08 IriX64 they're merely checking a passed pointer to a struct for validity, in fb_close trying to close the device.
05:12.17 IriX64 works ty.
05:12.23 IriX64 rt too :)
05:16.18 IriX64 was failing on the open.
05:18.52 IriX64 my way i still check the pointer for validity, but it's not tied to that funny number.
05:20.36 IriX64 just use the same name for the new check, it passes, i recompiled everything.
05:25.56 IriX64 still need the other two variables (ptr and str) .
05:26.11 IriX64 for backwards compatibility :)
05:31.37 IriX64 http://www.pastebin.ca/index.php my code for what its worth, nothing else need change.
05:37.11 IriX64 now to build an x version for myself.
05:38.00 brlcad IriX64: removing the check doesn't fix anything any more than spraying perfume on crap makes it smell good
05:38.34 brlcad it's a value defined by BRL-CAD and repeatedly checked for validity in the case of bug injection or bad compilation logic
05:38.39 IriX64 well my crap not only smells good it does what its supposed now :)
05:39.07 brlcad it's still crap
05:39.22 IriX64 but crap that works is no longer crap
05:39.30 brlcad that's BS
05:39.35 brlcad you've just masked the problem
05:39.40 brlcad and created an unstable system
05:39.51 IriX64 urf ok just ignore that snippit i pasted
05:40.00 brlcad there's no guarantee now that you might coorrupt a geometry database or cause other harm
05:40.19 IriX64 man we're dealing with video here its not rocket science.
05:40.21 brlcad just because it no longer aborts doesn't mean the problem is fixed, it aborted for a very important reason
05:40.36 IriX64 yeah the damn numbers didint match.
05:40.53 IriX64 one is supplied by me one by u go figure.
05:41.02 brlcad that's just the check
05:41.08 brlcad do you even realize what the check means?
05:41.14 IriX64 but it bombs on a simple open
05:41.23 brlcad it means you have corrupted memory, the wrong data
05:41.36 brlcad which means just about *anything* can happen
05:41.46 brlcad random crashes, unstable behavior, data corruption
05:42.04 brlcad that's absurd
05:42.11 IriX64 goats gotten, as i say you're free to ignore it.
05:42.41 brlcad well, just don't waste my time later with any other issues then, because that is a deal-breaker
05:42.53 brlcad flat out, you're on your own
05:43.07 IriX64 sure if im going to hassle you ill recompile with that in it ok?
05:43.34 IriX64 err yours in it.
05:43.48 IriX64 simple #ifdef for sean ...
05:44.20 IriX64 ill even add it to configure ;)
05:44.29 IriX64 --for-sean
05:46.31 brlcad the fact it even works is interesting, perhaps a side effect of the prevalence of aliasing and struct alignments
05:46.44 brlcad but it's entirely unpredictable behavior
05:47.39 brlcad what's bothersome is that you seem to think there's nothing wrong with the change you've made as if you understand the full implications .. I do not believe that to be the case
05:48.43 brlcad i'm not just being pedantic about the check, there is a problem there that may or may not be benign, but it's an entirely unpredictable system and as a solid modeling system predictability and security of user data is paramount important
05:51.21 brlcad Maloeran: brl-cad doesn't use the magic numbers just for debugging, it's fundamental to various data integrity tests and assurance that the application will shut down the instant an unexpected situation is detected so as not to corrupt data .. the user's data is vastly (several orders) more important than the application
05:52.50 brlcad there is a compile-time switch to turn off the actual checks and run-time debugging aspects of those checks, but we don't even ship binaries with that option .. it's intended for specific jobs where you know that an error won't be encountered and want the 5-50% performance gain
05:55.25 brlcad as for actually removing the magic variables at compile-time, it's rather bad-practice to change the size of your structs between modes of compilation -- you change alignments, can mask errors, and can introduce new problems in itself
06:02.54 *** join/#brlcad SWPadnos (n=Me@dsl245.esjtvtli.sover.net)
06:58.23 IriX64 x works
07:16.12 ``Erik O.o
07:17.35 ``Erik removing struct magic isn't going to buy you anything, just bring grief...
07:19.30 ``Erik yeah, it burns a clock in some functions, but if it ever follows the 'off' branch path, it's a serious error, so performance wise it's an "optimal" jne
08:36.00 *** join/#brlcad clock_ (n=clock@zux221-122-143.adsl.green.ch)
08:37.20 *** join/#brlcad clock_ (n=clock@zux221-122-143.adsl.green.ch)
09:48.12 *** join/#brlcad clock__ (n=clock@zux221-122-143.adsl.green.ch)
12:43.50 brlcad our application has been entered
13:06.08 *** join/#brlcad SWPadnos_ (n=Me@dsl245.esjtvtli.sover.net)
13:33.33 *** join/#brlcad clock_ (n=clock@zux221-122-143.adsl.green.ch)
13:40.21 Maloeran Makes sense, brlcad. I guess the magic checks aren't too present in the critical performance loops
14:08.25 *** join/#brlcad rossberg (n=rossberg@bz.bzflag.bz)
15:48.48 Maloeran Mmhm, http://news.bbc.co.uk/2/hi/asia-pacific/6441631.stm
16:53.03 IriX64 used the wrong code tree, goof that I am, there goes another hour.
17:12.17 *** join/#brlcad clock_ (n=clock@zux221-122-143.adsl.green.ch)
17:19.47 *** join/#brlcad ChanServ (ChanServ@services.)
17:19.47 *** mode/#brlcad [+o ChanServ] by irc.freenode.net
18:00.43 *** join/#brlcad dtidrow_work (n=dtidrow@host169.objectsciences.com)
19:05.08 IriX64 wikipedia knows nothing of glEnable() (cept for a java wrapper) :)
19:06.17 IriX64 should have all ansi programming references there :)
19:14.38 ``Erik em, it's an encyclop�dia, not a programmer reference...
19:22.32 brlcad it's also directly editable.. if you want to add something that's missing, you can directly do so
19:38.44 IriX64 doesn't that cause a mess?
19:39.37 IriX64 who keeps track of what i add it could be blatantly a lie.
19:47.42 ``Erik oh neat, they're running 'the prisoner' on bbc, first episode starts in 10 minutes
20:54.42 *** join/#brlcad IriX64 (n=mario_du@bas3-sudbury98-1168050142.dsl.bell.ca)
21:01.34 IriX64 mc
21:08.28 *** join/#brlcad clock_ (i=clock@84-72-90-161.dclient.hispeed.ch)
21:45.39 *** join/#brlcad docelic (n=docelic@212.15.176.65)
22:39.29 *** join/#brlcad louipc (n=louipc@bas8-toronto63-1096782634.dsl.bell.ca)
22:57.03 Maloeran Exclusive games or ports?
22:59.32 ``Erik software at all
23:00.04 ``Erik http://www.lemon64.com/games/list.php?type=year&name=1999&submit.x=0&submit.y=0
23:11.19 *** join/#brlcad Twingy (n=justin@74.92.144.217) [NETSPLIT VICTIM]
23:16.38 IriX64 some lemon for your tequila ``Erik :)
23:18.26 Maloeran 1999... We had 3d accelerated games and megabytes of RAM then, very surprising to see C64 games
23:19.10 Maloeran Then again, some people in Efnet's #asm still write code for that platform, for some poorly defined reason
23:19.34 IriX64 why is amigaos in config.sub?
23:21.23 IriX64 likewise ibm370 ;)
23:21.38 IriX64 mvs mmmmm
23:26.15 ``Erik config.sub is a GNU provided file that supports an obscene # of os's
23:26.35 ``Erik heh
23:26.44 ``Erik I've had urges to write c64 asm in the last few months
23:27.16 ``Erik it's good to understand the history
23:27.48 ``Erik I also use hand-tools when I have equivelant powertools, and I cook things from scratch that I could buy pre-prepared at a restraunt or a grocers frozen section
23:27.50 ``Erik *shrug*
23:27.59 ``Erik c64 asm was fun...
23:28.03 ``Erik x86 is anything but.
23:28.38 ``Erik mips asm was fun, too... unfortunate that it didn't gain traction like that horrible intel klugefuck
23:30.27 Maloeran amd64 & SSE is bearable
23:31.33 IriX64 ``Erik i'm a pdp sort so I know what you speak of :)
23:32.04 ``Erik the sse2 api is, uh, fugly? :)
23:32.16 ``Erik I d'no what exactly the differences between amd64 and x86 are
23:32.38 IriX64 both based on segments unfortunatly
23:33.23 Maloeran Segments? Not quite
23:33.25 ``Erik heh, x86 style segment addressing still boggles me... I mean, "toy" computers of the 80's had moved to paged addressing
23:33.30 bjorkBSD a pdp sort? he's a COBOL programmer :O
23:33.30 IriX64 SSE? elucidate ive been hiding from the industry for a while.
23:33.35 ``Erik 70's, even
23:33.42 ``Erik the c64 had sorta paged memory
23:33.54 IriX64 heh picture this picture that :)
23:33.56 ``Erik absolute wiht fixed size, but .... O.o not offset
23:34.40 Maloeran Erik, I was wondering something. Why don't they make chips able to buffer, let's say, 4 threads per core... and whenever there's a cache miss, it switches execution to another thread until execution can continue?
23:35.03 ``Erik uhh, I d'no? :D
23:35.09 Maloeran I think it would be a fairly nice design, considering how cache misses are typically such a large bottleneck
23:35.12 ``Erik feel free to patent the idea *cough*
23:35.20 Maloeran Pft :p
23:35.27 ``Erik just remember, silicon costs, and you're talking about doing that in silicon
23:35.40 bjorkBSD common sand?
23:35.48 bjorkBSD ... washed with common water? :P
23:35.55 bjorkBSD the beach becons
23:36.04 Maloeran Erik, it would simplify chip design on many other aspects
23:36.07 bjorkBSD *k
23:36.27 ``Erik mal: do you have a silicon emulator?
23:36.28 IriX64 prefer quadruple cache 1=instructions current 2- instructions probable 3= data current 4=data probable.
23:36.29 Maloeran They could focus on just having multiple cores processing a large buffer of threads, rather than trying desesperately to make one thread run as fast as possible
23:36.39 ``Erik um
23:36.49 ``Erik in school, I got a copy of "mmlogic" I think...
23:36.53 ``Erik windows only
23:37.05 ``Erik but building a pipelined gpu in it was ... educational
23:37.09 Maloeran Whenever there's a resource bottleneck, such as cache misses, it could suspend the thread and move to another one
23:38.09 Maloeran It would be an elegant way to keep all processing resources busy, while completely hiding the memory latency
23:38.36 ``Erik but youd' be talking about building a full-up scheduler in silicon
23:38.51 Maloeran Not a scheduler, just a small buffer of 4 threads per core
23:39.13 ``Erik small, yes, but a scheduler... :D
23:39.20 Maloeran Fine :p
23:39.46 ``Erik and process scheduling is very much a non-solved aspect
23:40.33 Maloeran Come on, this is simple. Whenever a thread hits a cache miss, or requires the FDIV unit blocked by another thread, just switch to the next one
23:40.39 ``Erik unless you admit that the ingo O(1) scheduler jsut shoved in linux is no better than the ancient BSD 'fair use' scheduler...
23:40.56 ``Erik WHICH next one?
23:41.04 Maloeran Any other of its 4 threads!
23:41.16 IriX64 and if they all block?
23:41.19 ``Erik but which any? the one waiting for the result of the first?
23:41.20 Maloeran The OS can do correct thread management, the chip will just try to keep its resources busy
23:41.25 ``Erik the one waiting on the disk read?
23:43.00 IriX64 could put in a deadman timer i guess Maloeran.
23:43.01 Maloeran It doesn't have to be fancy at all, there's the OS to do all the careful and proper thread management
23:43.38 ``Erik and what if it makes the kernel 1000x uglier to cope with the 2% speed boost? :D
23:43.54 ``Erik dude, get a silicon simulator, try your idea out... if it works
23:43.59 ``Erik fucking patent it and start a biz
23:43.59 Maloeran The point is just to switch between multiple threads currently awaiting processing in order to nicely hide the memory latency, while keeping processing resources busy
23:44.25 Maloeran Processing speed keeps increasing, memory is lagging behind, I think this is a solution to solve the issue
23:45.33 ``Erik but I tend to use computers as data manipulators on large sets, not fast simple repetitive crunchers :)
23:46.09 Maloeran Exactly, wouldn't you prefer to fully hide the horrible latency of accessing your large sets which are never in cache? :)
23:46.21 ``Erik um
23:46.32 ``Erik the data sets taht start to irk me are too big to fit in ram
23:46.36 ``Erik and i have boxen with LOTS of ram
23:46.37 Maloeran Multiple threads managed by the hardware really are the solution
23:46.48 ``Erik I mean, my laptops have 2g a whack, they're tiny...
23:46.57 ``Erik the boxes I "work" on are 8g and 32g
23:47.03 ``Erik g as in gigabytes of ram
23:47.13 Maloeran Fine, stop just loading data, and start doing some number crunching on it :)
23:47.26 ``Erik but in grinding over 500gb of data, *shrug*
23:47.53 Maloeran Bah. So it's not useful to you. You do see the point of the design, right?
23:48.07 ``Erik my cpu's almost never cook up anything notable in 'user' cpu... :)
23:48.36 ``Erik it could be useful, yeah... figure out the details, if it's really a win, patent it and make your zillion dollars
23:48.50 ``Erik then you can 'retire' and do what you want instead of trying to make a living :)
23:49.11 ``Erik heh
23:49.18 ``Erik solve the problem of paying bills.
23:49.19 ``Erik :D
23:50.04 ``Erik I mean, if you push this 'interesting problem' and make a few million bucks, you can get away with never trying to "make money" ever again, right?
23:50.30 ``Erik so you can focus on 'interesting' problems without worrying about rent or paying for lunch
23:50.31 ``Erik no?
23:50.43 Maloeran Designing a chip to take on AMD is not something I can do alone within a reasonable time frame
23:51.15 ``Erik a defendable patent can be sold to the likes of amd *shrug*
23:51.26 Maloeran Anyway, I think the ideas are good if anyone here likes gazillion stuff
23:52.22 dtidrow_work got a question for you all - which linux file system is best for handling lots of files in a single directory?
23:53.37 dtidrow_work and that's available on linux?
23:54.00 Maloeran dtidrow_work, reading, writing, creating or deleting many files?
23:54.09 ``Erik but my 'big' dir is only 13000 files
23:54.17 dtidrow_work reading atm
23:54.24 ``Erik no, ufs is a UNIX fs, default for freebsd O:-)
23:54.31 Maloeran Then reiser4
23:54.45 dtidrow_work is it actually available?
23:54.54 dtidrow_work thought it was still 'beta'
23:55.26 Maloeran Ah yes, that's probably right... Reiser3 is in the kernel sources though, of coursee

Generated by irclog2html.pl by Jeff Waugh - find it at freshmeat.net! Modified by Tim Riker to work with blootbot logs, split per channel, etc.