After refactoring the git domain in #709 and simpifying the git code significantly. I noticed that the performance when cloning wasn't that much improved. This was purely a vibes based observation so we need to add benchmarks to for the git domain to determine performance changes later down the line. This is very important so we can compare improvements when updating the efs and js-db repos to be more performant.
Benchmarks will be added for each git/http.ts and git/utils.ts function to get an idea of which parts do the most processing. We will also add a full integration benchmark for doing an clone and pull example using isomorphic-git.
Each benchmark will compare the following where apropriate.
Running using fs.
Running using efs.
Running over the RPC.
Running over RPC AND efs.
We may not need to cover every function or example but being able to compare baseline fs with efs and rpc examples would be good for determining where the slowdowns are. I'm already pretty sure it's the db and efs being the core source of the slowdown.
Additional context
Related: #298
Related: #709
Tasks
Create benchmarks for each relevant git domain function and generator.
Ensure we test each case of using the fs, efsrpc and the combo of efs+rpc.
Specification
After refactoring the git domain in #709 and simpifying the git code significantly. I noticed that the performance when cloning wasn't that much improved. This was purely a vibes based observation so we need to add benchmarks to for the git domain to determine performance changes later down the line. This is very important so we can compare improvements when updating the
efs
andjs-db
repos to be more performant.Benchmarks will be added for each
git/http.ts
andgit/utils.ts
function to get an idea of which parts do the most processing. We will also add a full integration benchmark for doing an clone and pull example usingisomorphic-git
.Each benchmark will compare the following where apropriate.
fs
.efs
.RPC
.RPC
ANDefs
.We may not need to cover every function or example but being able to compare baseline
fs
withefs
andrpc
examples would be good for determining where the slowdowns are. I'm already pretty sure it's thedb
andefs
being the core source of the slowdown.Additional context
Tasks
git
domain function and generator.fs
,efs
rpc
and the combo ofefs
+rpc
.