In the pipeline (hopefully in the next version) I'm working on an equivalent to ObjectSpace.trace_object_allocations but that records full stacks of where every object is allocated https://github.com/jhawthorn/vernier/pull/117 and having the profiler survive process forks
=> More informations about this toot | View the thread
Vernier 1.5.0 is out! This has some significant changes including rewriting the timer thread sleeping (should be lighter weight), recording Fiber activity (thanks @tenderlove), and showing file listings on the command line. Please let me know if you hit any issues 🙇♂️ https://github.com/jhawthorn/vernier/releases/tag/v1.5.0
=> View attached media | View attached media
=> More informations about this toot | View the thread
I was working on a crash in CRuby and wrote a basic version of the "Delta Debugging" algorithm to reduce the size of the failing program.
https://github.com/jhawthorn/delta_debug#usage
=> More informations about this toot | View the thread
Neat to see that an article about encoding and solving a sudoku in python packages https://github.com/konstin/sudoku-in-python-packaging. I used the same trick when testing the Ruby port of pub grub (which is now used in bundler) https://github.com/jhawthorn/pub_grub/pull/3
=> More informations about this toot | View the thread
I've seen others configure git to run bundle lock
or similar, which has some advantages over what I'm doing, but I want a tool which just operates on the diff and doesn't perform any silent upgrading that wasn't done in the branches being merged.
=> More informations about this toot | View the thread
I'm working on a tool to perform automated three-way-merge of Gemfile.lock files to be used as a git merge driver. https://gist.github.com/jhawthorn/72ef2312ab55d368b3a1ee55290cbb78
=> More informations about this toot | View the thread
=> More informations about this toot | View the thread
=> More informations about this toot | View the thread
Petition to add Zerg, Protoss, and Terran emoji to unicode
=> More informations about this toot | View the thread
def really_rand = [rand(2**64)].pack("Q").unpack1("D")
really_rand()
really_rand()
=> More informations about this toot | View the thread
=> More informations about this toot | View the thread
For comparison above is a graph with 50 points vs below measuring 300 points at a regular interval (it has a slightly different X axis... I made a mistake). I think the old version looks better but the new version was way faster to generate and it more precisely narrows down the specific commit(s) which caused a change (rather than an interval, which I'd then have to bisect).
=> More informations about this toot | View the thread
I'm working on a tool to bisect through a git history to find performance changes to a given benchmark.
Unlike a traditional git bisect
, which looks for a boolean change, we want to find points at which a value has a sharp jump.
=> More informations about this toot | View the thread
TIL ./configure --config-cache
=> More informations about this toot | View the thread
=> More informations about this toot | View the thread
=> This profile without reblog | Go to john@hawthorn.pub account This content has been proxied by September (3851b).Proxy Information
text/gemini