{"thread":{"id":"51282","subject":"[GSoC][RFC] New approach: improve threading at git-grep","startedAt":"2019-06-10T16:47:51Z","lastAt":"2019-06-10T16:47:51Z","messageCount":1,"participants":["Matheus Tavares Bernardino"],"isPatch":false,"patchVersion":null,"patchTotal":null},"messages":[{"id":"376948","messageId":"CAHd-oW5ifDZ_MmtmkuQt0FMpG74F=MZeUZ0yw7nq0xjOcwN-nA@mail.gmail.com","threadId":"51282","inReplyTo":null,"subject":"[GSoC][RFC] New approach: improve threading at git-grep","fromName":"Matheus Tavares Bernardino","fromEmail":"matheus.bernardino@usp.br","sentAt":"2019-06-10T16:47:38Z","receivedAt":"2019-06-10T16:47:51Z","isPatch":false,"sender":{"key":"matheus.tavb@gmail.com","avatar":"https://avatars.githubusercontent.com/u/12701583?v=4"},"body":"Hi, everyone\n\nI've been working on making the pack access code thread safe, as my\nGSoC project[1]. I was working directly at sha1-file.c global states\ntargeting, in the far distance, to parallelize git-blame. But my\nmentors and I decided to take a different path, as a better way to\ncontinuous validate the work being done and be able to see small\ncontinuous improvements: the idea is to focus on the object store call\nchains originated at git-grep. Making them thread-safe, we should be\nable to re-enable threading when greping blobs[2] and go refining\ngit-grep's locks along the way, for a better performance.\n\nI just posted about the overall idea together with some analysis I've\nmade on git-grep, here:\nhttps://matheustavares.gitlab.io/posts/week-4-a-different-approach\nPlease, let me know if you have any comments or suggestions.\n\nThanks,\nMatheus\n\n[1]: https://matheustavares.gitlab.io/assets/Matheus_Tavares_GSoC_Proposal.pdf\n[2]: Disabled by 53b8d93 (“grep: disable threading in non-worktree\ncase”, 2011-12-12), because it was causing slowdowns\n"}]}