IRC log for #brlcad on 20101109

00:33.55 CIA-48 BRL-CAD: 03brlcad * r41293 10/brlcad/trunk/configure.ac: few more warnings to consider
01:58.55 *** join/#brlcad R0b0t1 (~Enigma@unaffiliated/r0b0t1)
07:43.00 *** join/#brlcad stevegt_ (~stevegt@c-69-181-134-76.hsd1.ca.comcast.net)
08:37.11 *** join/#brlcad mafm (~mafm@83.37.154.171)
09:37.05 *** join/#brlcad WhiteCalf (MK@whitecalf.net)
09:42.23 *** join/#brlcad Ralith_ (~ralith@S010600221561996a.vc.shawcable.net)
11:01.02 CIA-48 BRL-CAD: 03indianlarry * r41294 10/brlcad/trunk/src/librt/opennurbs_ext.cpp: fixed delete statement for allocated array (delete knots -> delete [] knots)
11:02.38 CIA-48 BRL-CAD: 03indianlarry * r41295 10/brlcad/trunk/src/librt/bundle.c: removed unused static debug variable
11:11.52 CIA-48 BRL-CAD: 03indianlarry * r41296 10/brlcad/trunk/src/librt/primitives/brep/brep.cpp: (log message trimmed)
11:11.52 CIA-48 BRL-CAD: Fixed under sized arrays used in reporting intersects in four corner solver.
11:11.52 CIA-48 BRL-CAD: This under size was causing stack corruption issues when a subdivision surface
11:11.52 CIA-48 BRL-CAD: was hit more than twice. Added definition MAX_BREP_SUBDIVISION_INTERSECTS and
11:11.52 CIA-48 BRL-CAD: currently set to 5, four corners and center are currently being tested for
12:01.27 d-lo yawns
12:08.45 brlcad wow, so that's why nmg conversion of havoc is taking so long.. there's like an O(n^5) in there
12:13.15 brlcad n^6 or n^8 even
12:13.27 brlcad incredible
12:14.05 d-lo n7 guys in Mass Effect were pretty elite.... but thats not what you're talking about ;)
12:16.59 d-lo sorry for the total tangent. :)
12:17.16 d-lo how easy a fix is that to get closer to ^2 or linear?
12:26.04 CIA-48 BRL-CAD: 03brlcad * r41297 10/brlcad/trunk/ (NEWS src/librt/primitives/nmg/nmg_fuse.c):
12:26.04 CIA-48 BRL-CAD: this fixes an infinite loop that was getting hit when fusing vertices due to
12:26.04 CIA-48 BRL-CAD: some faulty iteration logic. instead of continuing if they are not equal, which
12:26.04 CIA-48 BRL-CAD: was causing it to stay in the same processing state, check if they are equal so
12:26.04 CIA-48 BRL-CAD: we can fuse and break. it was stuck endlessly fusing. affects most NMG and BOT
12:26.04 brlcad trivial
12:26.21 brlcad it was just carelessly being too careful
12:26.39 d-lo nice :) Easy fixes are the best.
12:27.03 d-lo do you have benchmarks as to how much improvement your fix gained?
12:27.24 brlcad not yet
12:27.55 brlcad part of that nmg conversion script I whipped up, has exposed a variety of problems
12:28.07 d-lo well awesome then.
12:28.19 d-lo assuming those problems get fixed of course :)
12:28.19 brlcad it's been busy processing every object in db/*.g
12:28.34 brlcad every now and then it hits an object and takes .. a very very long time
12:29.26 brlcad I've been attaching the debugger to make sure it's not an infinite loop (which one WAS) .. but now ran into a case where the time complexity wasn't just geometric
12:30.00 brlcad relatively simple piece of geometry, debugger showed it wasn't stuck, found crazyness
12:30.18 d-lo now is this nmg stuff ours, but old?
12:30.33 brlcad there's an O(n^2) NMG_CK_HITMISS_LISTS() macro that validates that the entries in a hitmiss list point to valid memory
12:30.44 brlcad that check is fine, but it was *everywhere*
12:31.15 brlcad so it was iterating over the hitmiss list as it walked down the same callstack even
12:31.23 d-lo hrm, alsmost sounds like that portion of code never had the 'debugness' of it taken out.
12:32.00 brlcad f() -> g() -> h() -> i() basically calling it every step down at the beginning and end of every function
12:32.12 brlcad so doing more than 10x the amount of work it needs to, only to test memory
12:32.46 d-lo so did you just gut that stuff or put some dort of debug flag around it?
12:32.59 brlcad unrolled them properly up the stack
12:33.18 brlcad so only f() does the check before and after calling g()
12:33.23 d-lo kewl :)
12:34.45 d-lo is that call stack the same every time? Cause I wonder if only having the memcheck in f() is completely safe....
12:34.51 d-lo *just thinking abstractly*
12:34.57 d-lo as I havent seen the code.
12:41.24 *** join/#brlcad juanman (~quassel@unaffiliated/juanman)
12:41.36 ``Erik hmmm
12:54.58 brlcad they're all safe checks
13:23.29 *** join/#brlcad R0b0t1 (~Enigma@unaffiliated/r0b0t1)
13:38.17 brlcad deprecates 40 commands
13:53.25 CIA-48 BRL-CAD: 03brlcad * r41298 10/brlcad/trunk/doc/deprecation.txt: (log message trimmed)
13:53.26 CIA-48 BRL-CAD: massive deprecation of various mged commands that are being consolidated into a
13:53.26 CIA-48 BRL-CAD: more consistent interface with fewer commands. NO FUNCTIONALITY IS BEING
13:53.26 CIA-48 BRL-CAD: REMOVED, they are being merged in with other existing commands as options or
13:53.26 CIA-48 BRL-CAD: subcommands so common functionality is grouped together. this should eliminate
14:06.42 CIA-48 BRL-CAD: 03brlcad * r41299 10/brlcad/trunk/doc/deprecation.txt:
14:06.42 CIA-48 BRL-CAD: add a few more easy ones to include the list for deprecation. remove need to
14:06.42 CIA-48 BRL-CAD: distinguish between prims and combs (no 'o' commands or options). deprecaters
14:06.42 CIA-48 BRL-CAD: include: aproposlib aproposdevel qvrot qorot sed oed ted red vdraw vnirt
14:06.42 CIA-48 BRL-CAD: vquery_ray
14:06.50 brlcad inital list truncated was: ?lib ?devel dbconcat dbupgrade dbfind dbupgrade debugbu debugdir debuglib debugmem debugnmg comb_std comb_color combmem killall killtree killrefs rotobj arot mrot orot vrot oscale pscale otranslate ptranslate nmg_collapse nmg_fix_normals nmg_simplify bot_condense bot_decimate bot_face_fuse bot_vertex_fuse bot_face_sort bot_smooth erase_all query_ray xpush
14:07.10 brlcad so that'll be about 50 commands that are easy to refactor
14:07.18 brlcad shoudl be a good start
14:13.40 CIA-48 BRL-CAD: 03brlcad * r41300 10/brlcad/trunk/NEWS: (log message trimmed)
14:13.40 CIA-48 BRL-CAD: keith fixed a bug in the NURBS raytracing code where it was crashing on a
14:13.40 CIA-48 BRL-CAD: particular surface evaluation. the ray was grazing a surface and the code was
14:13.40 CIA-48 BRL-CAD: assuming only two hits were possible (in/out) when the surface was flat. this
14:13.40 CIA-48 BRL-CAD: particular crash case involved three hits causing the fixed-size array bounds to
14:16.20 CIA-48 BRL-CAD: 03starseeker * r41301 10/brlcad/branches/STABLE/ (62 files in 14 dirs): Sync STABLE branch to trunk r41297.
14:35.06 d-lo Great stuff. And SFW: http://i.imgur.com/uaOrr.jpg
15:53.51 CIA-48 BRL-CAD: 03starseeker * r41302 10/brlcad/trunk/doc/README.MacOSX: Toss in a note in case I need to remember how to query what version of OSX I'm using from the command line.
15:57.43 CIA-48 BRL-CAD: 03starseeker * r41303 10/brlcad/trunk/doc/README.Linux: Mention the version file for Redhat and Fedora while we're at it.
16:02.32 CIA-48 BRL-CAD: 03bob1961 * r41304 10/brlcad/trunk/src/tclscripts/mged/mgedrc.tcl: Fixed a typo in the dump_mged_state proc related to the status_bar default.
16:11.03 CIA-48 BRL-CAD: 03bob1961 * r41305 10/brlcad/trunk/src/tclscripts/mged/bindings.tcl:
16:11.03 CIA-48 BRL-CAD: Modified the default_mouse_bindings proc by replacing the previous hack, related
16:11.03 CIA-48 BRL-CAD: to bad mouse behavior on Mac OS 10.5, with a similar hack that let's the user
16:11.03 CIA-48 BRL-CAD: determine whether or not to use the provided hack by setting a no_focus_hack
16:11.03 CIA-48 BRL-CAD: variable in the .mgedrc file.
16:17.14 *** join/#brlcad Zaebos (~irc@pd95b7f5e.dip0.t-ipconnect.de)
17:11.30 *** join/#brlcad 14WAABF48 (~stevegt@2001:470:1f05:601:212:f0ff:fe44:bea2)
19:35.39 d-lo Well now! http://www.cbsnews.com/stories/2010/11/09/national/main7036716.shtml
19:52.56 *** join/#brlcad Ralith (~ralith@d142-058-092-131.wireless.sfu.ca)
19:53.52 brlcad yeah, interesting
19:54.37 d-lo Somewhere, on some sub, there is a junior Fire Control Tech who is no longer a Fire Control Tech
19:54.57 brlcad heh
19:57.39 CIA-48 BRL-CAD: 03brlcad * r41306 10/brlcad/trunk/ (NEWS src/librt/primitives/nmg/nmg_rt_isect.c): (log message trimmed)
19:57.40 CIA-48 BRL-CAD: undo code that is carelessly being too careful. NMG_CK_HITMISS_LISTS() is a
19:57.40 CIA-48 BRL-CAD: linear walk over the hit and miss lists that was being called all over the place
19:57.40 CIA-48 BRL-CAD: up and down the call stack, often very redundantly. this is causing certain
19:57.40 CIA-48 BRL-CAD: objects that need to fire rays to evaluate the nmg surface to run absurdly
20:42.38 starseeker d-lo: hehe - "Wait, don't set that cup there- oh, crap"
20:45.33 starseeker aaaand it looks like our RPM build is busted
20:46.13 CIA-48 BRL-CAD: 03bob1961 * r41307 10/brlcad/trunk/src/libged/rt.c: Modified ged_build_tops to use the full path name when building up the command line vector.
20:54.16 CIA-48 BRL-CAD: 03starseeker * r41308 10/brlcad/trunk/misc/brlcad.spec.in: Evidently Copyright is supposed to be License these days.
21:45.32 CIA-48 BRL-CAD: 03bob1961 * r41309 10/brlcad/trunk/src/libged/tables.c: Need to dereference numreg and numsol before incrementing.
21:51.05 CIA-48 BRL-CAD: 03starseeker * r41310 10/brlcad/trunk/NEWS: Bob fixed bug in idents, solids and regions command where counting was not functioning due to an improperly referenced counter.
22:05.18 *** join/#brlcad velociostrich (~nsd@c-68-37-119-2.hsd1.nj.comcast.net)
23:18.24 *** join/#brlcad stevegt_ (~stevegt@216.1.176.121)
23:47.46 *** join/#brlcad velociostrich (~nsd@c-68-37-119-2.hsd1.nj.comcast.net)

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