Latest working* code was at https://github.com/ajvondrak/factor/tree/gvn
*I haven't pushed any of the stuff I was experimenting on when I started having problems with `load-all test-all`. But before those issues, I gave up on figuring out why math.vectors.simd tests (specifically around the check-vector-ops tests) were causing memory protection faults with GVN enabled (they don't with it disabled), hoping that getting gvn-tests.factor up to date would resolve issues. But, I got gvn-tests.factor working without needing any changes to the GVN pass itself, so I reckon the math.vectors.simd tests will still fail. Hopefully one of you knows more about how to go around debugging those tests than I do? (If you can reproduce, anyway.) As for the code itself, I started by copying over basis/compiler/cfg/value-numbering/ to extra/compiler/cfg/gvn/ and changing it there. It was easier during development to not touch an existing compiler pass, lest the whole listener break. The diff between the gvn & value-numbering stuff is actually pretty small. But since they're different files, it might be a bit of a pain to figure some stuff out (to make sure you like it or whatever). I've found myself doing a lot of `git diff --no-index` and `git merge-file basis/stuff /dev/null/ extra/stuff` to resolve discrepancies. Pretty sure I took care of the few changes made to the value-numbering vocab while I was working on gvn: https://github.com/ajvondrak/factor/commit/beff2088132d992c983ddebe5860183f01bc8b5e Otherwise, it should be a drop-in replacement of value-numbering: just change references to compiler.cfg.value-numbering into compiler.cfg.gvn in math.simd.vectors.intrinsics and compiler.cfg.optimizer. Extra things I can think of: - I needed to make a minor change to compiler.cfg.copy-prop due to the GVN changes, so that'll be in there. - The reason I wrote the graphviz vocab was to facilitate the fun stuff in https://github.com/ajvondrak/factor/blob/gvn/extra/compiler/cfg/graphviz and https://github.com/ajvondrak/factor/tree/gvn/extra/compiler/cfg/gvn/testing so I could include CFG diagrams in my thesis. - Just last night, I tried out a fresh 0.95 download's `load-all test-all` (in ./factor -run=listener) on my x86_64, up-to-date Arch install (same hardware as before). Still crashed, but instead of getting "out of memory" I got a memory protection fault from the gc. I hope to be improving the GVN pass some once I can get these errors figured out. :-/ I notice there's been an issue opened about load-all test-all running out of memory (https://github.com/slavapestov/factor/issues/633); don't know if that's in response to what I brought up or not. So, I guess I kind of just went "text dump" mode there, but let me know if you have any questions or if there's anything I can do to help. Regards, --Alex Vondrak ________________________________________ From: John Benediktsson [mrj...@gmail.com] Sent: Sunday, September 09, 2012 6:58 PM To: factor-talk@lists.sourceforge.net Subject: Re: [Factor-talk] Out of memory error I'd love to help you work on merging your GVN patches, where did we leave it? Best, John. On Sat, Aug 25, 2012 at 7:05 PM, Alexander J. Vondrak <ajvond...@csupomona.edu<mailto:ajvond...@csupomona.edu>> wrote: Good idea, but still no dice. --Alex Vondrak ________________________________________ From: Doug Coleman [doug.cole...@gmail.com<mailto:doug.cole...@gmail.com>] Sent: Saturday, August 25, 2012 4:28 PM To: factor-talk@lists.sourceforge.net<mailto:factor-talk@lists.sourceforge.net> Subject: Re: [Factor-talk] Out of memory error Are you running it in the shell listener? It might save memory. ./factor -run=listener load-all test-all Doug On Sat, Aug 25, 2012 at 1:36 PM, Alexander J. Vondrak <ajvond...@csupomona.edu<mailto:ajvond...@csupomona.edu>> wrote: > Just did a load-all test-all with 0.94, and that crashes, too. I know that > I've run those tests before without running out of memory, so I suspect it's > either an OS update issue (who knows?) or how my setup is interacting with my > new hardware (inherited some 64-bit hardware, still using my old 32-bit Debian > install because I've been lazy about ditching it/upgrading/what-have-you). > Don't know if that would make sense, per se, but hell, it's not the first > problem I've had with my current OS setup. If no one can reproduce, it's > probably some combination of things on my end... > > I'll be trying the unit tests out again once I get Arch configured on another > hard drive on this machine. > > Thanks for the feedback everyone, > --Alex Vondrak > > ________________________________________ > From: John Benediktsson [mrj...@gmail.com<mailto:mrj...@gmail.com>] > Sent: Saturday, August 25, 2012 11:11 AM > To: > factor-talk@lists.sourceforge.net<mailto:factor-talk@lists.sourceforge.net> > Cc: > factor-talk@lists.sourceforge.net<mailto:factor-talk@lists.sourceforge.net> > Subject: Re: [Factor-talk] Out of memory error > > If this is happening of 0.95 release than I wonder if we have a slow leak > rather than corruption - all of our builders produce consistent clean builds > (load-all test-all) and have for awhile. > > Perhaps we don't notice due to 16+ GB of RAM...? > > > On Aug 25, 2012, at 11:06 AM, Joe Groff > <arc...@gmail.com<mailto:arc...@gmail.com>> wrote: > >> On Sat, Aug 25, 2012 at 1:36 PM, Jim Mack >> <j...@less2do.com<mailto:j...@less2do.com>> wrote: >>> In a way, too many possible culprits mask each other. >>> >>> I remember a problem like this that I solved by reducing the amount of >>> memory so the problem would show quickly, then testing small things in >>> isolation and volume. Pick a subset of tests and run them multiple times at >>> low memory until it fails or becomes clear it won't. Rinse and repeat. >> >> An out of memory error could also be caused by things other than a >> lack of memory. If the heap is getting corrupted or there is a >> compiler bug, the system could end up passing a garbage size to malloc >> or mmap that is too big to be fulfilled. >> >> -Joe >> >> ------------------------------------------------------------------------------ >> Live Security Virtual Conference >> Exclusive live event will cover all the ways today's security and >> threat landscape has changed and how IT managers can respond. Discussions >> will include endpoint security, mobile security and the latest in malware >> threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/ >> _______________________________________________ >> Factor-talk mailing list >> Factor-talk@lists.sourceforge.net<mailto:Factor-talk@lists.sourceforge.net> >> https://lists.sourceforge.net/lists/listinfo/factor-talk > > ------------------------------------------------------------------------------ > Live Security Virtual Conference > Exclusive live event will cover all the ways today's security and > threat landscape has changed and how IT managers can respond. Discussions > will include endpoint security, mobile security and the latest in malware > threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/ > _______________________________________________ > Factor-talk mailing list > Factor-talk@lists.sourceforge.net<mailto:Factor-talk@lists.sourceforge.net> > https://lists.sourceforge.net/lists/listinfo/factor-talk > > ------------------------------------------------------------------------------ > Live Security Virtual Conference > Exclusive live event will cover all the ways today's security and > threat landscape has changed and how IT managers can respond. Discussions > will include endpoint security, mobile security and the latest in malware > threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/ > _______________________________________________ > Factor-talk mailing list > Factor-talk@lists.sourceforge.net<mailto:Factor-talk@lists.sourceforge.net> > https://lists.sourceforge.net/lists/listinfo/factor-talk ------------------------------------------------------------------------------ Live Security Virtual Conference Exclusive live event will cover all the ways today's security and threat landscape has changed and how IT managers can respond. Discussions will include endpoint security, mobile security and the latest in malware threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/ _______________________________________________ Factor-talk mailing list Factor-talk@lists.sourceforge.net<mailto:Factor-talk@lists.sourceforge.net> https://lists.sourceforge.net/lists/listinfo/factor-talk ------------------------------------------------------------------------------ Live Security Virtual Conference Exclusive live event will cover all the ways today's security and threat landscape has changed and how IT managers can respond. Discussions will include endpoint security, mobile security and the latest in malware threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/ _______________________________________________ Factor-talk mailing list Factor-talk@lists.sourceforge.net<mailto:Factor-talk@lists.sourceforge.net> https://lists.sourceforge.net/lists/listinfo/factor-talk ------------------------------------------------------------------------------ Live Security Virtual Conference Exclusive live event will cover all the ways today's security and threat landscape has changed and how IT managers can respond. Discussions will include endpoint security, mobile security and the latest in malware threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/ _______________________________________________ Factor-talk mailing list Factor-talk@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/factor-talk