)]}'
{
  "commit": "4d705c71ad3f8423444c08badfc741aee7a621bb",
  "tree": "f4b87253e7ebb95502c2f6c7c36c26bea17c7d28",
  "parents": [
    "d76914786a6a121e6744dc7e107e79eda3d0eb0b"
  ],
  "author": {
    "name": "Laurenz Stampfl",
    "email": "47084093+LaurenzV@users.noreply.github.com",
    "time": "Thu Jun 19 10:11:46 2025 +0200"
  },
  "committer": {
    "name": "GitHub",
    "email": "noreply@github.com",
    "time": "Thu Jun 19 08:11:46 2025 +0000"
  },
  "message": "Add support for SIMD in strip rendering (#1053)\n\nBlocked by https://github.com/raphlinus/fearless_simd/pull/6\n\nHere are the benchmark results:\n\n```\nBefore:\nrender_strips/Ghostscript_Tiger: 219.27 µs\nrender_strips/paris_30k time:   20.511 ms\nrender_strips/coat_of_arms: 1.8297 ms\n\nAfter:\nrender_strips/Ghostscript_Tiger_fallback: 217.16 µs\nrender_strips/Ghostscript_Tiger_simd: 176.49 µs\nrender_strips/paris_30k_fallback: 21.583 ms\nrender_strips/paris_30k_simd: 16.784 ms\nrender_strips/coat_of_arms_fallback: 1.7997 ms\nrender_strips/coat_of_arms_simd: 1.4832 ms\n```\n\nWe currently cannot use more than 128-bit because the current logic has\nan accumulating factor which makes it impossible to directly port to a\nSIMD width larger than the tile height. I think it shouldn\u0027t be too hard\nto solve, but 128-bit already gives very nice improvements as can be\nseen above (given that the old code already autovectorized very well)!\n\nAlso currently only in `vello_cpu`, but should be easy enough to add to\n`vello_hybrid`. :)",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "3c3e3060f7320b780196abafa72e0a7050343a82",
      "old_mode": 33188,
      "old_path": "Cargo.lock",
      "new_id": "2eb0de4ec40164d4778ef8bdee7de600f7a425ed",
      "new_mode": 33188,
      "new_path": "Cargo.lock"
    },
    {
      "type": "modify",
      "old_id": "b38aea940068b052e07c571ad69b0efc1a16923c",
      "old_mode": 33188,
      "old_path": "Cargo.toml",
      "new_id": "c2f2bc9e525259b8f7f7bdbe26b5bc2c1c42702b",
      "new_mode": 33188,
      "new_path": "Cargo.toml"
    },
    {
      "type": "modify",
      "old_id": "acd56d41cf84d635faff7039424c35ae05f1c080",
      "old_mode": 33188,
      "old_path": "sparse_strips/vello_bench/src/data.rs",
      "new_id": "ae7978e989af1829a42349c9c4f5a3fae1b370d5",
      "new_mode": 33188,
      "new_path": "sparse_strips/vello_bench/src/data.rs"
    },
    {
      "type": "modify",
      "old_id": "3606b2505d0cb066684c5eeacaffdc1132099d75",
      "old_mode": 33188,
      "old_path": "sparse_strips/vello_bench/src/strip.rs",
      "new_id": "02def474f48c77af6b312254778e8ed53c3d4670",
      "new_mode": 33188,
      "new_path": "sparse_strips/vello_bench/src/strip.rs"
    },
    {
      "type": "modify",
      "old_id": "b947b308d159b196b6b9696f53d3da85ebd6a69a",
      "old_mode": 33188,
      "old_path": "sparse_strips/vello_common/Cargo.toml",
      "new_id": "9ba10bb43fbf0c8e9b1f5fae5be2c8e65ba0fb8b",
      "new_mode": 33188,
      "new_path": "sparse_strips/vello_common/Cargo.toml"
    },
    {
      "type": "modify",
      "old_id": "e0b6b81519c240dd4acfd77aad49260fa3759c50",
      "old_mode": 33188,
      "old_path": "sparse_strips/vello_common/src/lib.rs",
      "new_id": "4ea612bbd4289248de924fa324321edce855715b",
      "new_mode": 33188,
      "new_path": "sparse_strips/vello_common/src/lib.rs"
    },
    {
      "type": "modify",
      "old_id": "fff92985618832afce9427a8a685f6ae4ed894cb",
      "old_mode": 33188,
      "old_path": "sparse_strips/vello_common/src/strip.rs",
      "new_id": "cc8720dbcc4bc91f893ed71e14ec022bad37fc6b",
      "new_mode": 33188,
      "new_path": "sparse_strips/vello_common/src/strip.rs"
    },
    {
      "type": "modify",
      "old_id": "ad30a150a0799c5387a5de29b389c08a73fb76c3",
      "old_mode": 33188,
      "old_path": "sparse_strips/vello_cpu/README.md",
      "new_id": "27f0b0d1de489dfce6fb69346e68fd1a7cde1969",
      "new_mode": 33188,
      "new_path": "sparse_strips/vello_cpu/README.md"
    },
    {
      "type": "modify",
      "old_id": "d00fe7ceb86f15902ec220868193dec724f0997f",
      "old_mode": 33188,
      "old_path": "sparse_strips/vello_cpu/src/dispatch/multi_threaded.rs",
      "new_id": "f95d086a26c4bcc14a0579ff8ed392786eec9230",
      "new_mode": 33188,
      "new_path": "sparse_strips/vello_cpu/src/dispatch/multi_threaded.rs"
    },
    {
      "type": "modify",
      "old_id": "b2b97b0f0f733ff52ef86d593fd752689baabad6",
      "old_mode": 33188,
      "old_path": "sparse_strips/vello_cpu/src/dispatch/single_threaded.rs",
      "new_id": "872d3f3d96f7168df0e442103787c9f5c1060051",
      "new_mode": 33188,
      "new_path": "sparse_strips/vello_cpu/src/dispatch/single_threaded.rs"
    },
    {
      "type": "modify",
      "old_id": "f92edff22263a0a7a76cff98c04f1012d84c4fc2",
      "old_mode": 33188,
      "old_path": "sparse_strips/vello_cpu/src/lib.rs",
      "new_id": "5b0740e1e3f48094ae52d2db1362da0abfffeb35",
      "new_mode": 33188,
      "new_path": "sparse_strips/vello_cpu/src/lib.rs"
    },
    {
      "type": "modify",
      "old_id": "079eaaa14637c3e707a29c750f1ca8055f1c28d8",
      "old_mode": 33188,
      "old_path": "sparse_strips/vello_cpu/src/render.rs",
      "new_id": "628a1e54e57181117b7fa5c77cd990b0ca355225",
      "new_mode": 33188,
      "new_path": "sparse_strips/vello_cpu/src/render.rs"
    },
    {
      "type": "modify",
      "old_id": "dc0aab5aa990bef22d1d1f2ae2cad291bb04b93d",
      "old_mode": 33188,
      "old_path": "sparse_strips/vello_cpu/src/strip_generator.rs",
      "new_id": "d102e9ba9b1313d23ed4d0f6c25d14d60ea903b0",
      "new_mode": 33188,
      "new_path": "sparse_strips/vello_cpu/src/strip_generator.rs"
    },
    {
      "type": "modify",
      "old_id": "5b6bd65f84225f2ade5e887c7cd607db86aaea8e",
      "old_mode": 33188,
      "old_path": "sparse_strips/vello_dev_macros/src/lib.rs",
      "new_id": "7ee6c3b2020a67e0867b5c11ee7757f9b7d786a7",
      "new_mode": 33188,
      "new_path": "sparse_strips/vello_dev_macros/src/lib.rs"
    },
    {
      "type": "modify",
      "old_id": "c2a4b66f0cc5495ce02182d8229893b23ba1d255",
      "old_mode": 33188,
      "old_path": "sparse_strips/vello_dev_macros/src/test.rs",
      "new_id": "79f164ab99d635c17009beb28c67e2192a487984",
      "new_mode": 33188,
      "new_path": "sparse_strips/vello_dev_macros/src/test.rs"
    },
    {
      "type": "modify",
      "old_id": "ea4592570f57f958385830a641f85d9d53350a1b",
      "old_mode": 33188,
      "old_path": "sparse_strips/vello_hybrid/src/scene.rs",
      "new_id": "c766e3c4940f61993bcfab271f972de6c6437344",
      "new_mode": 33188,
      "new_path": "sparse_strips/vello_hybrid/src/scene.rs"
    },
    {
      "type": "modify",
      "old_id": "c6cdbb82914ce5de3146c4938179c2db758a8fab",
      "old_mode": 33188,
      "old_path": "sparse_strips/vello_sparse_tests/Cargo.toml",
      "new_id": "538dd168cfde35e25dadf32138dbd78cb7d5f070",
      "new_mode": 33188,
      "new_path": "sparse_strips/vello_sparse_tests/Cargo.toml"
    },
    {
      "type": "modify",
      "old_id": "439e100af660429fc71197317ba2188d16a1b11f",
      "old_mode": 33188,
      "old_path": "sparse_strips/vello_sparse_tests/tests/gradient.rs",
      "new_id": "c80954f055e0e284eb3b0cff9609365ccf631df9",
      "new_mode": 33188,
      "new_path": "sparse_strips/vello_sparse_tests/tests/gradient.rs"
    },
    {
      "type": "modify",
      "old_id": "59c265a4ef626c071249f0d3ec450f959d6b346c",
      "old_mode": 33188,
      "old_path": "sparse_strips/vello_sparse_tests/tests/mask.rs",
      "new_id": "f8a74bdc4412a38455a3d78acc94587e712522fb",
      "new_mode": 33188,
      "new_path": "sparse_strips/vello_sparse_tests/tests/mask.rs"
    },
    {
      "type": "modify",
      "old_id": "805d13a4a22ce3540d5b62979c0c057c42e62af6",
      "old_mode": 33188,
      "old_path": "sparse_strips/vello_sparse_tests/tests/renderer.rs",
      "new_id": "b4135fb5d72424b9b67d99208d5db9edf636d9bb",
      "new_mode": 33188,
      "new_path": "sparse_strips/vello_sparse_tests/tests/renderer.rs"
    },
    {
      "type": "modify",
      "old_id": "d73bc74cc528679082d9f28b7bae150dccebe693",
      "old_mode": 33188,
      "old_path": "sparse_strips/vello_sparse_tests/tests/util.rs",
      "new_id": "0d5469e3b79a05153750fe756a98d698d7928839",
      "new_mode": 33188,
      "new_path": "sparse_strips/vello_sparse_tests/tests/util.rs"
    },
    {
      "type": "modify",
      "old_id": "1cce0e34818916527a0c3eed565f7c42ba05b163",
      "old_mode": 33188,
      "old_path": "sparse_strips/vello_toy/src/debug.rs",
      "new_id": "01fcbcce27b05cab2a4d97d2804c1076ec935422",
      "new_mode": 33188,
      "new_path": "sparse_strips/vello_toy/src/debug.rs"
    }
  ]
}
