| 01:13.55 | CIA-5 | BRL-CAD: 03brlcad * 10brlcad/ (1348 files in 82 dirs): (log message trimmed) |
| 01:13.55 | CIA-5 | BRL-CAD: Sweeping license updates. Documentation is fully relicensed to the BSD |
| 01:13.55 | CIA-5 | BRL-CAD: Documentation License (a minor variant of the FreeBSD Documentation License and |
| 01:13.55 | CIA-5 | BRL-CAD: BSD License). All GPL code (mostly application code) is converted to the LGPL |
| 01:13.55 | CIA-5 | BRL-CAD: and now also specifically declares version 2.1, revoking the blank check to the |
| 01:13.58 | CIA-5 | BRL-CAD: FSF. The intent of these sweeping changes are to simplify the licensing terms |
| 01:14.00 | CIA-5 | BRL-CAD: and increase overall flexibility of use, both externally (to users for their |
| 01:14.23 | CIA-5 | BRL-CAD: 03brlcad * 10brlcad/src/ (409 files in 16 dirs): (log message trimmed) |
| 01:14.23 | CIA-5 | BRL-CAD: Sweeping license updates. Documentation is fully relicensed to the BSD |
| 01:14.23 | CIA-5 | BRL-CAD: Documentation License (a minor variant of the FreeBSD Documentation License and |
| 01:14.23 | CIA-5 | BRL-CAD: BSD License). All GPL code (mostly application code) is converted to the LGPL |
| 01:14.24 | CIA-5 | BRL-CAD: and now also specifically declares version 2.1, revoking the blank check to the |
| 01:14.26 | CIA-5 | BRL-CAD: FSF. The intent of these sweeping changes are to simplify the licensing terms |
| 01:14.28 | CIA-5 | BRL-CAD: and increase overall flexibility of use, both externally (to users for their |
| 01:16.27 | ``Erik | O.O |
| 02:10.42 | Maloeran | Confirmed by Mark, they did look into non-immigration visas too. Oh well, I guess it's time to get that degree paper thing |
| 04:04.37 | *** join/#brlcad PrezKennedy (n=Matthew@c-69-138-68-160.hsd1.md.comcast.net) | |
| 08:26.16 | *** join/#brlcad clock_ (n=clock@zux221-122-143.adsl.green.ch) | |
| 10:02.52 | CIA-5 | BRL-CAD: 03d_rossberg * 10brlcad/src/other/libregex/libregex.dsp: |
| 10:02.52 | CIA-5 | BRL-CAD: not a BRL-CAD core library |
| 10:02.52 | CIA-5 | BRL-CAD: remove misleading multibyte-character support |
| 10:04.43 | clock_ | What does -a mean in pix-png? It seems to not have a manpage. |
| 10:05.01 | clock_ | Turn upside down? Or 16-bit input? |
| 10:07.14 | CIA-5 | BRL-CAD: 03d_rossberg * 10brlcad/src/other/openNURBS/opennurbs.dsp: |
| 10:07.14 | CIA-5 | BRL-CAD: ignore opennurbs_zlib_memory.cpp in win32-msvc build |
| 10:07.14 | CIA-5 | BRL-CAD: we do not need the openNURBS wrapper functions zcalloc() and zcfree() since we're just letting zlib do it's own thing |
| 11:17.31 | *** join/#brlcad clock_ (n=clock@zux221-122-143.adsl.green.ch) | |
| 11:49.46 | brlcad | noir:~ morrison$ man brlcad/src/util/pix-png.1 | grep autosize -a autosize the input file to determine file image height and width |
| 11:56.27 | CIA-5 | BRL-CAD: 03brlcad * 10brlcad/NEWS: write up a summary of the recent sweeping license changes. i.e. describe gpl->lgpl and gfdl/gpl->bdl as well as the motvations, impact, and intent. |
| 11:56.39 | brlcad | basically -a means "try to figure out how big the file is", which is only useful if your image has "standard" common dimensions and it guesses correctly. |
| 12:51.44 | *** join/#brlcad rossberg (n=rossberg@bz.bzflag.bz) | |
| 13:19.56 | *** join/#brlcad rossberg_ (n=rossberg@66.111.56.50) | |
| 13:49.01 | *** join/#brlcad rossberg (n=rossberg@bz.bzflag.bz) | |
| 14:08.03 | ``Erik | heh |
| 14:45.20 | ``Erik | eh? |
| 17:21.30 | CIA-5 | BRL-CAD: 03johnranderson * 10brlcad/src/librtserver/rtserver.c: Java Partition objects now include entrance and exit surface normals |
| 17:49.39 | clock_ | lol Java |
| 17:49.48 | clock_ | and BRL-CAD goes downhill too :) |
| 18:15.39 | Maloeran | Woah, there's a Java interface for librt o.O |
| 18:17.43 | Maloeran | Ah yes, it's for MUVES of course |
| 18:19.33 | Maloeran | Don't worry clock_, I'll try not to let anyone write a Java interface for the new raytracer :) |
| 18:24.38 | brlcad | clock_: that's been in there for several years, jni wrapper to a subset of librt |
| 18:26.07 | brlcad | Maloeran: good luck -- that's actually the next generation muves 3 there that uses the jni interface, not muves-s2 |
| 18:26.49 | brlcad | but then with that interface, there's a *lot* more room for flexibility and marshalling of data in and changing/defining the api |
| 18:27.28 | brlcad | that's certainly not on this year's agenda I'd have to guess though |
| 18:27.57 | Maloeran | brlcad, it's just that it implies performing the "shading" in Java ; which, as you know, will make performance collapse |
| 18:50.47 | ``Erik | the 'shading' being done in the C variant has no performance, so there's a possibility that a java version may be faster... |
| 18:51.12 | ``Erik | not the one actually being worked on, but *A* version might be... |
| 18:51.13 | ``Erik | O:-) |
| 19:34.09 | Maloeran | Erik, can I "safely" assume floats are always 4 bytes and doubles 8 bytes? ( flipping endianess of floats between nodes ) |
| 19:36.14 | Maloeran | It checks if the floating point encoding is the same between the platforms of course, but I'm wondering if different widths exist |
| 19:50.21 | ``Erik | I don't think the C spec makes any assertion on width of float or double? |
| 19:50.47 | ``Erik | hm, k&r is showing bunches of different bitwidths for, uh, ... all C types |
| 19:51.14 | ``Erik | I can't think of a machine that doesn't use 32 and 64 bits ieee754/854 for float and double |
| 19:51.23 | ``Erik | a modern one, that is |
| 19:51.42 | ``Erik | I mean, the honeywell 6000 used 36 and 72 |
| 19:55.58 | Maloeran | Ahah, cool. |
| 19:56.23 | Maloeran | I know that C doesn't garantee anything on floating point datatypes, but I still need to flip bytes somehow |
| 19:56.59 | Maloeran | I was wondering if some arch could have used 8 and 16 bytes floats/doubles, or the same width for both, etc. |
| 19:57.23 | ``Erik | ieee754 is the standard that describes bit packing and width |
| 19:57.50 | ``Erik | mebbe, I saw mention of "half precision" floats using 16b that might be going into ieee754 |
| 19:57.55 | ``Erik | and quad precision with 128b |
| 19:58.42 | ``Erik | um, intel, amd, and ibm/ppc are all ieee754 fpu equiped... |
| 19:59.10 | Maloeran | I have alternative paths to handle non-ieee floats anyhow, it's just the width I was wondering about |
| 19:59.36 | ``Erik | (bear in mind, intel 386's usually came without an fpu, you have to shove in an x387 or get a 386dx for fpu hw, otherwise the c compiler faked it... common availability ofa n fpu is still pretty new) |
| 19:59.49 | ``Erik | if it's not ieee754, then all bets are off on width |
| 20:01.55 | Maloeran | It still requires storage in memory somehow, so it's likely to be some 2-4-8-16 bytes wideness |
| 20:02.17 | ``Erik | most machines are these days... several were 36 bit words |
| 20:04.05 | ``Erik | hrm, looks like the cell uses ieee... at least, they say it supports their rounding modes |
| 20:04.27 | ``Erik | and since ibm has the modules for ieee754 for their ppc's, I can't see them not reusing it |
| 20:05.02 | Maloeran | It's really just the width I was concerned about, non-ieee is already handled |
| 20:05.20 | ``Erik | I'm going to imagine that for the target hardware, it's ok to make those assumptions |
| 20:05.36 | Maloeran | The graph preparation code plays right in the binary representation of floats/doubles, if it's IEEE |
| 20:05.42 | ``Erik | ieee specifies widths, so it's all good |
| 20:05.43 | Maloeran | Right, thanks |
| 20:06.22 | ``Erik | damn this code is retarded :/ |
| 20:07.04 | Maloeran | Are you working on the raytracing comparison framework? |
| 20:07.09 | ``Erik | yeah |
| 20:08.12 | ``Erik | loading a 'geometry' file in this thing involves setting up a new tcl interpreter, shoving crap into it, then deleting it... instead of using the one already running |
| 20:08.30 | Maloeran | Strange... |
| 20:08.44 | Maloeran | By the way, did Lee obtain the leave to complete his doctorate or not? |
| 20:08.59 | ``Erik | it's still being looked at, heh |
| 20:09.33 | ``Erik | someone had an ego writing this thing, too |
| 20:09.49 | ``Erik | mebbe I should start doing that... struct mything_s *erik; |
| 20:10.00 | Maloeran | Ahaha |
| 20:11.02 | Maloeran | Have you considered stepping up to take Lee's place, if he leaves? I think you said you weren't interested |
| 20:12.34 | ``Erik | <-- just a lowly db2, that's a db4 position |
| 20:12.58 | ``Erik | also; I've pissed off the fucktards in mgmt as much as anyone else |
| 20:13.22 | Maloeran | At the indian restaurant in Baltimore, Lee said he was looking for a competent person to take his place if he leaves, and he would gladly give it to someone like you |
| 20:13.40 | Maloeran | Though I don't know, I'm not too aware of what's going there |
| 20:21.31 | ``Erik | heh, there's political bs in the way *shrug* |
| 20:21.56 | ``Erik | plus I d'no think I'd be interested in ever doing what he does... meetings and ties ain't mah thang |
| 20:24.15 | dtidrow_work | what a heretical idea... ;-) |
| 20:28.35 | ``Erik | blah->destructor(blah); stinks, I'd rather see blah_destructor(blah); :/ |
| 20:29.16 | Maloeran | Unless that destructor varies a lot based on the state of "blah", a function pointer does the job then |
| 20:32.17 | ``Erik | blah is malloc'd, so you'd have to free() it after calling that destructor (or declare it on the stakc and pass &blah, which'd be much neater) |
| 20:32.18 | ``Erik | imma rewrite all this shit in lithp one of thethe dayth |
| 20:33.24 | Maloeran | By the way, is that blocking one-ray-at-a-time interface threaded? In that design, I would somewhat need an arbitrary pointer per thread to keep track of state on a per-thread basis... |
| 20:34.00 | Maloeran | Single threaded, globals would do I guess |
| 20:34.12 | *** join/#brlcad magicalex (n=54dd4221@bz.bzflag.bz) | |
| 20:35.25 | ``Erik | I was hoping to talk to lee about extending the interface to allow bundled shtuff |
| 20:35.45 | ``Erik | and maybe feeding that back to the codemonkeys on the retarded side of the fence |
| 20:35.55 | ``Erik | but he's out today |
| 20:37.40 | Maloeran | Bundled, non-blocking with callbacks, letting me do the threading would be nice. An interface allowing intelligent management of ray sources and displacements would be a blessing |
| 20:38.11 | Maloeran | Anyhow, I'll try to make up something that works no matter the interface you give me |
| 20:39.00 | ``Erik | *shrug* the sales pitch was about integrating it into a specific program, so I'm gonna give you as close to their interface as I can |
| 20:39.21 | ``Erik | changing it much is going to get them up in a knot and either fighting it or not using it |
| 20:54.25 | brlcad | the initial approach of getting it working with the interface that is already in place, for better or worse, is still the best first step for various reasons |
| 20:55.45 | ``Erik | *nod* |
| 20:55.59 | ``Erik | this code makes me want to run away o.O |
| 20:56.36 | brlcad | adding non-blocking callbacks to librt might be the next step, showing how it would change interaction with librt .. get them to understand/adopt those changes |
| 20:57.28 | brlcad | now how non-blocking results would actually be beneficial to the various algorithms the other codes are using is where I could easily see there being big problems |
| 20:58.28 | ``Erik | their fundamental design is very serial and it hasn't aged well :/ |
| 20:58.50 | brlcad | it makes sense for a ray intersection engine to answer asynchronously, but then ray-tracing in general can trivially compute asychronous as most of the computations are pretty much independent |
| 20:59.48 | brlcad | their design isn't independent, just about everything depends on something else, very serial, very much a "how thick is this region" and they can't really ask any more questions or do anything without guessing blinding until they get that answer |
| 21:01.59 | brlcad | part of it is their design, but part of it is also the domain and approach of the algorithms (which predominantly is neither their responsibility or in their domain of expertise to be designing) |
| 21:02.56 | ``Erik | <-- thinks it could be just as parallelizable as raytracing if it were described in terms of shading opposed to what they do now |
| 21:03.06 | ``Erik | *shrug* |
| 21:04.00 | ``Erik | yeah, each ray would be a fair bit heavier to compute, but if ya shoot 10,000 non-interacting primaries, it should theoretically scale linearly on a 10,001 cpu machine |
| 21:04.32 | brlcad | it probably could be, it correlates closely for some interactions |
| 21:05.23 | brlcad | but you don't convince someone riding a bike about the benefits of driving a car by trying to force them into the seat and telling them how much their bike sucks ;) |
| 21:05.53 | brlcad | there's plenty of downsides (from their perspective) that are entirely relevant |
| 21:06.01 | Maloeran | Quite right, slaming a car door in his face is so much more effective :) |
| 21:06.17 | ``Erik | mal: your bike sucks |
| 21:06.18 | ``Erik | :D |
| 21:06.27 | dtidrow_work | who's 'they', btw? |
| 21:06.38 | brlcad | brl-cad's primary user |
| 21:06.54 | dtidrow_work | heh |
| 21:06.55 | brlcad | the vulnerability/lethality analysis developers |
| 21:07.05 | ``Erik | heh, "vlad" |
| 21:07.15 | ``Erik | dealing with the current crop sure does suck the life out of ya |
| 21:07.20 | ``Erik | O:-) |
| 21:07.25 | Maloeran | Non-blocking sure would be nice, but especially, processing of rays in batches |
| 21:09.37 | brlcad | sure, Maloeran .. but when their entire problem-space is for a given algorithm is just a handful of dependent rays (done over and over, with dependencies at each step) .. it's like telling someone that's eating a salad at a local diner that they could have a much bigger salad if they bought in bulk at the local sams club |
| 21:09.59 | ``Erik | s/analogies/ ... |
| 21:10.01 | ``Erik | :D |
| 21:10.01 | brlcad | they simply wouldn't care .. at all .. no matter how many heads of lettuce they can get for a buck |
| 21:10.07 | Maloeran | Yes, I got the idea. If they need to know A before doing B, and B before doing C ; we should process 50000 A rays, followed by 50000 B and C |
| 21:10.25 | *** join/#brlcad SWPadnos_ (n=Me@dsl245.esjtvtli.sover.net) | |
| 21:10.40 | ``Erik | we get the same issue (sorta), mebbe WORSE in the "hall of mirrors" scenario |
| 21:11.16 | brlcad | they can be convinced to change their shopping and eating habits, but that's a long-term issue frankly pretty much outside the scope of the project |
| 21:11.32 | Maloeran | If we imagine global illumination where rays bounce around constantly, we don't want to follow one single ray until the end |
| 21:11.56 | Maloeran | We could process the first hit for 4000 rays, second hit for the same bouncing 4000 rays, etc. |
| 21:12.28 | ``Erik | for optical, that's fine.. |
| 21:12.45 | ``Erik | but, y'knw, if an optical ray hits glass, you shoot two secondaries and mix the result |
| 21:12.51 | ``Erik | they shoot several hundred |
| 21:13.27 | Maloeran | I would have used probabilities to decide which way it goes, but that works too |
| 21:13.50 | ``Erik | (but that's ok, they could do those several hundred in parallel, and they could do all their primaries in parallel) |
| 21:13.53 | ``Erik | y'know, if they chose to |
| 21:14.23 | ``Erik | *shrug* |
| 21:14.39 | Maloeran | So the problem could be re-engineered, but it's not going to happen so we have to handle individual blocking rays. All right |
| 21:15.25 | brlcad | this is like the bi-weekly bitch-fest isn't it? |
| 21:15.34 | ``Erik | oh yeah |
| 21:15.45 | ``Erik | if I gotta deal with their code, you'll hear me go off. |
| 21:16.00 | ``Erik | and I gotta deal with their code. |
| 21:16.08 | dtidrow_work | lol |
| 21:16.41 | brlcad | you know, nobody really disagrees -- and it's not even a new idea to question the way they do what they do and point out how it could/should be better .. been that way for decades |
| 21:17.13 | brlcad | but it's mostly pointless, or at least impractical without actually working hand-in-hand with them for weeks to make a change happen (and that just isn't going to happen either anytime soon) |
| 21:17.14 | Maloeran | I realize you are tired of hearing it over and over, when you can't do much about it |
| 21:17.23 | ``Erik | I know, and that's why everyone on the second floor is doing what they're doing |
| 21:17.33 | brlcad | right, and that worked out great |
| 21:17.43 | brlcad | :) |
| 21:17.44 | ``Erik | but, y'know, they're wrong, everyone's a moron, only I'm right :D *duck* |
| 21:17.54 | dtidrow_work | lol |
| 21:18.22 | ``Erik | (my award winning attitude, that's why all the users adore me :D ) |
| 21:19.34 | dtidrow_work | brlcad: ``Erik's public lynching is next week, right? ;-) |
| 21:19.35 | brlcad | attitude did more to the performance than java or the architecture itself ever did |
| 21:19.56 | ``Erik | at least thte activity of exploration into what the old software does and why, with the documentation... that's a good thing.. a step in the right direction. when that's done, maybe an appropriate replacement can be started |
| 21:20.52 | ``Erik | the architecture when viewed from orbit seems ok, up close it's ... nonoptimal |
| 21:22.04 | ``Erik | probably a combo of too many people working on it too early and too much "ooh shiney" without the opportunity to assess and fix (or remove) some mistakes |
| 21:22.05 | ``Erik | :) |
| 21:22.22 | ``Erik | *gripebitchcomplain* |
| 21:23.43 | brlcad | dtidrow_work: nah, he does enough to torture himself by not speaking out (at least tactfully) when it matters .. but then he's also partially escaped the sphere of influence so he doesn't have to be involved as much |
| 21:23.56 | dtidrow_work | heh |
| 21:24.50 | brlcad | riight, you're about as tactful as a box of tacks |
| 21:24.58 | brlcad | :) |
| 21:25.03 | ``Erik | trained attack tacks |
| 21:25.10 | dtidrow_work | rofl |
| 21:28.12 | Maloeran | As Caligula Ceasar walked among his lowly people anonymously, what a difference it would make if a manager were to listen here. He could even claim the ideas to "fix" these doomed projects were his own |
| 21:33.00 | Maloeran | Erik, do you have any idea if Lee had plans for me after this task? No need to ask him, I'm just wondering because SURVICE apparently plans to keep me busy |
| 21:33.03 | brlcad | not likely, because it's still not taking all the considerations into account that all become part of the issue.. mitigation of risks, not just doing things for academic purity (who the f*ck cares if it's not perfect, it does the job and does it well), the time/money/resources it would take to change it in a major way, documenting the new approach, *validating* that you really are 100% sure you didn't F-something up (the are-you-willing-to-bet-y |
| 21:34.58 | ``Erik | mal: I'm sure he does, whether or not he can execute them is nto necessarily in his power... and competent coders aren't exactly a common beast, if they can figure out how to make money off of you, they'll try to do it *shrug* |
| 21:35.34 | ``Erik | once ya got a little paid experience on your cv, it's not hard to stay working *shrug* |
| 21:36.27 | Maloeran | Well sure, SURVICE has plans. I would personally prefer to work with you guys somehow, if you are fine with that |
| 21:36.48 | ``Erik | <-- doesn't have any say in anything, one way or the other *shrug* |
| 21:37.10 | brlcad | if you had a specific task in mind, that would make selling a point a whole lot easier -- I have several in mind myself that I could raise |
| 21:37.50 | ``Erik | hm, the an/fsq-7 was kinda big |
| 21:38.17 | brlcad | que? |
| 21:39.10 | ``Erik | old computer, 2000m^2 floor space (half an acre) |
| 21:40.03 | brlcad | ahh |
| 21:40.05 | ``Erik | and wifi to boot |
| 21:42.23 | brlcad | Maloeran: the next thing I'd think would be cool to try and implement would be 1) a global illumination renderer using your tracer as a basis and 2) try to apply the same evaulation approach directly to implicit geometry |
| 21:43.16 | brlcad | and perhaps 3) a variety of shaders maybe implementing the renderman shader interface |
| 21:43.42 | ``Erik | heh, to see how bad bmrt's butt can get whupped? :D |
| 21:44.07 | brlcad | maybe for starters :) |
| 21:44.51 | Maloeran | brlcad, the whole raytracer was initially designed to solve high-performance global illumination, so I would be very interested in that |
| 21:45.07 | brlcad | at the order of magnitude he's got, if it could be sustained, he could even potentially give some of the big names a run for their money |
| 21:45.14 | Maloeran | It's really designed for that problem specifically. Though I wonder, what use would that be for the ARL? |
| 21:45.28 | ``Erik | making pretty pictures? |
| 21:45.39 | brlcad | Maloeran: signal processing, signatures, pretty pictures, pretty animations, etc |
| 21:46.24 | ``Erik | adrt has "rise" for path tracing, and it cooked a good bit of cpu time here for pretty pictures :) |
| 21:46.26 | brlcad | add support for multispectral energies and you can suddently generate real radar, infrared, microwave images |
| 21:47.01 | Maloeran | All right. SURVICE wants traversal of tetrahedron graphs with per-tetrahedron ray refraction implemented too |
| 21:47.06 | brlcad | rise was very much brute force, but very much "sells the cake" because the results look great |
| 21:47.19 | brlcad | ew |
| 21:47.20 | ``Erik | heh, yeah, and radiated energy distribution (like figuring out cell phone coverage, for example) |
| 21:47.28 | brlcad | sounds finite elementish |
| 21:47.54 | brlcad | i bet that's exactly what they want it for actually .. hm |
| 21:48.07 | ``Erik | per-tetrahedron ray refraction? O.o |
| 21:48.20 | Maloeran | It's to handle refraction of lasers mounted on aircrafts, going through layers of air of different density and temperature |
| 21:48.25 | Maloeran | It refracts the rays a bit |
| 21:48.27 | ``Erik | ah |
| 21:48.37 | ``Erik | interesting way to cope with atmospherics |
| 21:48.52 | Maloeran | It's rather nice, I hesitated for a very long time between a sector graph and a tetrahedron graph, so I'll be able to try the second way |
| 21:49.04 | brlcad | that same technique can be used to propagate energies and forces, it's the basics of FEA |
| 21:59.24 | *** join/#brlcad SWPadnos_ (n=Me@dsl245.esjtvtli.sover.net) | |
| 23:24.12 | Maloeran | *yawn* Urgh, I didn't sleep well last night because I was too emotionally moved by the "death" of HAL-9000 in "2010: The year we make contact" |
| 23:24.23 | ``Erik | heh, dork |
| 23:25.49 | ``Erik | I'm dorky, too, though *shrug* read mccarthy's "the robot and the baby" |
| 23:26.17 | ``Erik | http://www-formal.stanford.edu/jmc/robotandbaby.html |
| 23:26.28 | Maloeran | I haven't read that one, thanks |
| 23:26.36 | ``Erik | it's very short |
| 23:28.21 | ``Erik | (in case you're not brushed up, mccarthy was a move and shaker in the 50's and 60's with ai stuff... he was also the guy who axiomed the notion of programming computers and discovered lithp, invented things like function declarations and conditionals in programming, etc) |
| 23:28.21 | Maloeran | Thinking about it, it's really weird to have even more altruistic feelings towards AIs than humans |
| 23:28.42 | ``Erik | aiomized |
| 23:28.45 | ``Erik | axiomized |
| 23:29.13 | Maloeran | Ah I see, thanks. I was mixing names with Clarke |
| 23:31.35 | *** join/#brlcad cad34 (n=3ba7fd52@bz.bzflag.bz) | |
| 23:57.34 | ``Erik | The C programming language requires that all memory be accessible as bytes, so C implementations on 36-bit machines use 9-bit bytes. |
| 23:57.35 | ``Erik | neat |
| 23:57.59 | ``Erik | (and a testament to how untrustworthy C's types are) |
| 23:58.21 | brlcad | the sticky bit |