{"push_id":713687762,"size":1,"distinct_size":1,"ref":"refs/heads/lukas/erts/msacc","head":"b66b5c0037842284bfd1aaa1f1d2f55041cbe2b2","before":"e5b4f6a789eaf4f15663271a0ca39f80f501bde5","commits":[{"sha":"b66b5c0037842284bfd1aaa1f1d2f55041cbe2b2","author":{"email":"65adda4326914576405c9e3a62f4904d96573863@erlang-solutions.com","name":"Lukas Larsson"},"message":"erts: Add microstate accounting\n\nMicrostate accounting is a way to track which state the\ndifferent threads within ERTS are in. The main usage area\nis to pin point performance bottlenecks by checking which\nstates the threads are in and then from there figuring out\nwhy and where to optimize.\n\nSince checking whether microstate accounting is on or off is\nrelatively expensive if done in a short loop only a few of the\nstates are enabled by default and more states can be enabled\nthrough configure.\n\nI've done some benchmarking and the overhead with it turned off\nis not noticible and with it on it is a fraction of a percent.\nIf you enable the extra states, depending on the benchmark,\nthe ovehead when turned off is about 1% and when turned on\nsomewhere inbetween 5-15%.","distinct":true,"url":"https://api.github.com/repos/garazdawi/otp/commits/b66b5c0037842284bfd1aaa1f1d2f55041cbe2b2"}]}