{"id":"83b7af3658f4a700f2ae56cecf8905059a1cb2008ee8d59c2699b922d3ca8053","title":"Hugging Face says PyTorch 2.15 brings faster Mac-based AI workloads and FP8 support","argument":"Hugging Face’s PyTorch team describes upgrades to PyTorch 2.15’s MPS backend, which lets PyTorch use the GPU on Apple silicon Macs. The post reports support for FP8, a compact number format that uses half the storage of BF16, and new Metal GPU kernels for operations used in language-model decoding, audio, video and training.\n\nThe team reports substantial gains in specific tests: on an M3 Ultra, two mixture-of-experts models decoded 5–6.5 times faster than in PyTorch 2.14. In a Wan2.2 video-decoding workload, reported peak driver memory fell from about 270 GiB to 8 GiB after padding moved to Metal. These are results for the described hardware and workloads, not a guarantee of similar performance across Macs or models. The update also requires macOS 15 or later and Python 3.11 or later. The post presents PyTorch 2.16 improvements as work in progress, not features of 2.15.","topicIds":["intelligence-and-discovery","work-and-agency"],"domain":"work","claimType":"attributed reading","limits":"Performance and memory results are publisher-reported measurements for named hardware and workloads; the evidence does not establish general results across devices or applications. The post describes some PyTorch 2.16 changes as landed in nightlies or still in review; they are not presented as part of PyTorch 2.15.","speaker":{"name":"Irakli Salia, Khushi Agrawal","roleAtSource":"Article author"},"source":{"title":"MPS in PyTorch 2.15","publisher":"Hugging Face","format":"Article","url":"https://huggingface.co/blog/mps-pytorch-2-15","publishedAt":"2026-10-20T00:00:00.756Z","dateBasis":"Date stated by the publisher."},"evidence":[{"text":"Hugging Face’s PyTorch team says PyTorch 2.15 adds FP8 tensor support to the MPS backend on Mac.","excerpt":"PyTorch 2.15 adds torch.float8_e4m3fn tensors on MPS: one byte per value, half the storage of FP16 or BF16.","url":"https://huggingface.co/blog/mps-pytorch-2-15","relationship":"Source-stated"},{"text":"The post reports that, on an M3 Ultra with torch.compile, two mixture-of-experts models decoded 5–6.5 times faster than in PyTorch 2.14.","excerpt":"Mixture-of-experts models decode 5–6.5× faster than in 2.14: on an M3 Ultra with torch.compile, Qwen3.6-35B-A3B goes from 9.4 to 61.3 tokens/s and LFM2.5-8B-A1B from 23.6 to 123.6 tokens/s.","url":"https://huggingface.co/blog/mps-pytorch-2-15","relationship":"Source-stated"},{"text":"For the specified Wan2.2 video-decoding workload, the post reports that moving padding to Metal reduced peak driver memory from about 270 GiB to about 8 GiB.","excerpt":"With padding on Metal, peak driver memory drops from about 270 GiB to 8 GiB:","url":"https://huggingface.co/blog/mps-pytorch-2-15","relationship":"Source-stated"},{"text":"The reported results come from particular hardware and workloads; the post does not establish that other Macs or models will see the same gains.","excerpt":"On an M3 Ultra with torch.compile, MoE models generate about 1.3× more tokens per second:","url":"https://huggingface.co/blog/mps-pytorch-2-15","relationship":"Escape Meridian interpretation"},{"text":"The stated requirements for MPS with PyTorch 2.15 are macOS 15 or later and Python 3.11 or later.","excerpt":"You'll need an Apple silicon Mac with macOS 15 or later and Python 3.11 or later","url":"https://huggingface.co/blog/mps-pytorch-2-15","relationship":"Source-stated"}],"sourceMedia":{"status":"found","sourceUrl":"https://huggingface.co/blog/mps-pytorch-2-15","checkedAt":"2026-10-20T12:01:13.417Z","items":[],"note":"Media was declared by the source, but no asset passed the supported availability checks. Open the original source to view it."},"assumptions":[],"whatWouldChangeView":{"attribution":"Open question","text":"How well do these reported speed and memory improvements carry over to other Mac models and real-world workloads?"},"editorialComparisons":[],"live":{"title":"Hugging Face says PyTorch 2.15 brings faster Mac-based AI workloads and FP8 support","summary":"Hugging Face’s PyTorch team describes upgrades to PyTorch 2.15’s MPS backend, which lets PyTorch use the GPU on Apple silicon Macs. The post reports support for FP8, a compact number format that uses half the storage of BF16, and new Metal GPU kernels for operations used in language-model decoding, audio, video and training.\n\nThe team reports substantial gains in specific tests: on an M3 Ultra, two mixture-of-experts models decoded 5–6.5 times faster than in PyTorch 2.14. In a Wan2.2 video-decoding workload, reported peak driver memory fell from about 270 GiB to 8 GiB after padding moved to Metal. These are results for the described hardware and workloads, not a guarantee of similar performance across Macs or models. The update also requires macOS 15 or later and Python 3.11 or later. The post presents PyTorch 2.16 improvements as work in progress, not features of 2.15.","question":"How well do these reported speed and memory improvements carry over to other Mac models and real-world workloads?","claims":[{"text":"Hugging Face’s PyTorch team says PyTorch 2.15 adds FP8 tensor support to the MPS backend on Mac.","excerpt":"PyTorch 2.15 adds torch.float8_e4m3fn tensors on MPS: one byte per value, half the storage of FP16 or BF16.","support":"source-stated"},{"text":"The post reports that, on an M3 Ultra with torch.compile, two mixture-of-experts models decoded 5–6.5 times faster than in PyTorch 2.14.","excerpt":"Mixture-of-experts models decode 5–6.5× faster than in 2.14: on an M3 Ultra with torch.compile, Qwen3.6-35B-A3B goes from 9.4 to 61.3 tokens/s and LFM2.5-8B-A1B from 23.6 to 123.6 tokens/s.","support":"source-stated"},{"text":"For the specified Wan2.2 video-decoding workload, the post reports that moving padding to Metal reduced peak driver memory from about 270 GiB to about 8 GiB.","excerpt":"With padding on Metal, peak driver memory drops from about 270 GiB to 8 GiB:","support":"source-stated"},{"text":"The reported results come from particular hardware and workloads; the post does not establish that other Macs or models will see the same gains.","excerpt":"On an M3 Ultra with torch.compile, MoE models generate about 1.3× more tokens per second:","support":"interpretation"},{"text":"The stated requirements for MPS with PyTorch 2.15 are macOS 15 or later and Python 3.11 or later.","excerpt":"You'll need an Apple silicon Mac with macOS 15 or later and Python 3.11 or later","support":"source-stated"}],"limitations":["Performance and memory results are publisher-reported measurements for named hardware and workloads; the evidence does not establish general results across devices or applications.","The post describes some PyTorch 2.16 changes as landed in nightlies or still in review; they are not presented as part of PyTorch 2.15."],"mediaId":"c2b4b68d7e0027f0e4366133eb322fd84020df1d31b2a05734fa7c44edc22eb2","correctionReason":null,"id":"83b7af3658f4a700f2ae56cecf8905059a1cb2008ee8d59c2699b922d3ca8053","publicationId":"7be161ed-933a-45af-8b63-e77f65c19aa5","version":1,"sourceUrl":"https://huggingface.co/blog/mps-pytorch-2-15","sourceTitle":"MPS in PyTorch 2.15","publisher":"Hugging Face","publishedAt":"2026-10-20T00:00:00.756Z","originalPublished":{"value":"2026-10-20T00:00:00.756Z","precision":"instant","basis":"publisher_page"},"firstObservedAt":"2026-10-20T11:13:06.716Z","createdAt":"2026-10-20T12:02:10.412Z","historical":false,"entityIds":["hugging-face"],"topicIds":["intelligence-and-discovery","work-and-agency"],"media":[{"id":"c2b4b68d7e0027f0e4366133eb322fd84020df1d31b2a05734fa7c44edc22eb2","kind":"article","url":"https://huggingface.co/blog/mps-pytorch-2-15","sourceUrl":"https://huggingface.co/blog/mps-pytorch-2-15","label":"Read original","provenance":"source_link","verification":{"status":"verified","checkedAt":"2026-10-20T12:01:14.274Z","method":"acquired_source","contentType":"text/html"},"recommendationReason":"Recommended by Jev for understanding this source; checked by Luna."}],"sourceMedia":{"status":"found","sourceUrl":"https://huggingface.co/blog/mps-pytorch-2-15","checkedAt":"2026-10-20T12:01:13.417Z","items":[],"note":"Media was declared by the source, but no asset passed the supported availability checks. Open the original source to view it."},"editorialDecision":{"outcome":"accept","reasonCodes":["material_development"],"rubricVersion":"stream-admission-v5","mediaId":"c2b4b68d7e0027f0e4366133eb322fd84020df1d31b2a05734fa7c44edc22eb2","confidence":1,"provider":"vercel","model":"typesafe-ai/jev","inputHash":"f55325ed36e0a187d679e8bc46487c5cd6aff0ea3c9fc6876868e2a84d93460b","decidedAt":"2026-10-20T12:01:17.226Z"},"provenance":{"textHash":"dd995177891b6382e0a079cfb6aeef9e943c77387be096ba11bb4108e132edb2","observationId":"fedb60b1e3cab9d5aba1371f74490f68f930f69e54258da79bec615d8c0e8649","retrievedAt":"2026-10-20T12:01:13.417Z","kind":"publisher-page","preparer":{"model":"gpt-6-luna","runId":"7f69b293-0d42-4c93-8559-911c662490df"},"reviewer":{"model":"gpt-6-luna","runId":"5f64538d-9d87-4b57-813e-388ba491193b"}},"audit":{"status":"passed","reviewedAt":"2026-10-20T12:02:10.412Z","model":"anthropic/claude-opus-5.5"},"sourceAttribution":{"authors":[{"name":"Irakli Salia","url":"https://huggingface.co/Isalia20","kind":"Person"},{"name":"Khushi Agrawal","url":"https://huggingface.co/khushi-411","kind":"Person"}],"authorRole":"article-author","hosts":[],"status":"stated","authorRoster":{"truncated":false,"omitted":0,"assertionGroupsOmitted":0},"participation":[{"actor":{"name":"Irakli Salia","url":"https://huggingface.co/Isalia20","kind":"Person","actorId":null},"role":"author","scope":{"kind":"work-credit","locator":null},"literalCredit":"Irakli Salia","status":"stated","provenance":{"basis":"article-jsonld","sourceUrl":"https://huggingface.co/blog/mps-pytorch-2-15","locator":"document/html[1]/head[0]/script[41]@2175.author"},"assertionId":"40855d9c7bb4827e2455d3b1866dd0d7a756cbe96e11fbe1179a6c70bda0b76c:participation:0","identity":{"version":"entity-identity-v1","status":"unresolved","actorId":null,"canonicalActorId":null,"candidateActorIds":[],"assertions":[],"sourceObservedAt":"2026-10-20T12:01:13.417Z","knowledgeAsOf":null},"sourceVersion":{"snapshotId":"40855d9c7bb4827e2455d3b1866dd0d7a756cbe96e11fbe1179a6c70bda0b76c","sourceUrl":"https://huggingface.co/blog/mps-pytorch-2-15","contentSha256":"c8a3eb7dd82d1cfe9b28b3f09b1a53c0e94c1b55ee1411007ecbdfb93f89d6ca","textHash":"dd995177891b6382e0a079cfb6aeef9e943c77387be096ba11bb4108e132edb2","observedAt":"2026-10-20T12:01:13.417Z"}},{"actor":{"name":"Khushi Agrawal","url":"https://huggingface.co/khushi-411","kind":"Person","actorId":null},"role":"author","scope":{"kind":"work-credit","locator":null},"literalCredit":"Khushi Agrawal","status":"stated","provenance":{"basis":"article-jsonld","sourceUrl":"https://huggingface.co/blog/mps-pytorch-2-15","locator":"document/html[1]/head[0]/script[41]@2175.author"},"assertionId":"40855d9c7bb4827e2455d3b1866dd0d7a756cbe96e11fbe1179a6c70bda0b76c:participation:1","identity":{"version":"entity-identity-v1","status":"unresolved","actorId":null,"canonicalActorId":null,"candidateActorIds":[],"assertions":[],"sourceObservedAt":"2026-10-20T12:01:13.417Z","knowledgeAsOf":null},"sourceVersion":{"snapshotId":"40855d9c7bb4827e2455d3b1866dd0d7a756cbe96e11fbe1179a6c70bda0b76c","sourceUrl":"https://huggingface.co/blog/mps-pytorch-2-15","contentSha256":"c8a3eb7dd82d1cfe9b28b3f09b1a53c0e94c1b55ee1411007ecbdfb93f89d6ca","textHash":"dd995177891b6382e0a079cfb6aeef9e943c77387be096ba11bb4108e132edb2","observedAt":"2026-10-20T12:01:13.417Z"}},{"actor":{"name":"Hugging Face","url":"https://huggingface.co/","kind":"unknown","actorId":null},"role":"publisher","scope":{"kind":"publication","locator":null},"literalCredit":"Hugging Face","status":"stated","provenance":{"basis":"article-publisher","sourceUrl":"https://huggingface.co/blog/mps-pytorch-2-15","locator":"document/html[1]/head[0]/script[41]@2175.publisher"},"assertionId":"40855d9c7bb4827e2455d3b1866dd0d7a756cbe96e11fbe1179a6c70bda0b76c:participation:2","identity":{"version":"entity-identity-v1","status":"unresolved","actorId":null,"canonicalActorId":null,"candidateActorIds":[],"assertions":[],"sourceObservedAt":"2026-10-20T12:01:13.417Z","knowledgeAsOf":null},"sourceVersion":{"snapshotId":"40855d9c7bb4827e2455d3b1866dd0d7a756cbe96e11fbe1179a6c70bda0b76c","sourceUrl":"https://huggingface.co/blog/mps-pytorch-2-15","contentSha256":"c8a3eb7dd82d1cfe9b28b3f09b1a53c0e94c1b55ee1411007ecbdfb93f89d6ca","textHash":"dd995177891b6382e0a079cfb6aeef9e943c77387be096ba11bb4108e132edb2","observedAt":"2026-10-20T12:01:13.417Z"}}],"participationCoverage":{"total":3,"returned":3,"complete":true,"fullAssertions":"source-metadata-endpoint"},"distribution":null,"publisher":{"name":"Hugging Face","url":"https://huggingface.co/"},"sourceUrl":"https://huggingface.co/blog/mps-pytorch-2-15","snapshotId":"40855d9c7bb4827e2455d3b1866dd0d7a756cbe96e11fbe1179a6c70bda0b76c","contentSha256":"c8a3eb7dd82d1cfe9b28b3f09b1a53c0e94c1b55ee1411007ecbdfb93f89d6ca","textHash":"dd995177891b6382e0a079cfb6aeef9e943c77387be096ba11bb4108e132edb2","observedAt":"2026-10-20T12:01:13.417Z","basis":"publisher-page-metadata","sourceLinks":102,"linksTruncated":false,"metadataUrl":"/api/pipeline/stream/83b7af3658f4a700f2ae56cecf8905059a1cb2008ee8d59c2699b922d3ca8053/source"}},"canonicalUrl":"https://escapemeridian.com/readings/83b7af3658f4a700f2ae56cecf8905059a1cb2008ee8d59c2699b922d3ca8053","formats":{"html":"/readings/83b7af3658f4a700f2ae56cecf8905059a1cb2008ee8d59c2699b922d3ca8053","markdown":"/readings/83b7af3658f4a700f2ae56cecf8905059a1cb2008ee8d59c2699b922d3ca8053.md","json":"/readings/83b7af3658f4a700f2ae56cecf8905059a1cb2008ee8d59c2699b922d3ca8053.json"},"attribution":"Headline and summary by Escape Meridian, prepared by Luna from the attributed source. A source check is not independent confirmation of the source’s claims.","readerContext":{"version":"reader-context-v1","attribution":"Reference context selected by Escape Meridian; separate from source evidence. Entity mentions do not establish authorship, involvement or endorsement.","terms":[],"entities":[{"id":"hugging-face","name":"Hugging Face","kind":"organization","context":"Hugging Face hosts models, datasets and software that let people share, adapt and inspect AI systems.","referenceUrls":["https://huggingface.co/blog"],"path":"/entities/hugging-face","json":"/entities/hugging-face.json","markdown":"/entities/hugging-face.md"}]},"withdrawn":false,"references":{"schemaVersion":1,"target":{"type":"reading","id":"83b7af3658f4a700f2ae56cecf8905059a1cb2008ee8d59c2699b922d3ca8053","revision":"7be161ed-933a-45af-8b63-e77f65c19aa5","revisionKind":"publication-id","title":"Hugging Face says PyTorch 2.15 brings faster Mac-based AI workloads and FP8 support","url":"https://escapemeridian.com/readings/83b7af3658f4a700f2ae56cecf8905059a1cb2008ee8d59c2699b922d3ca8053"},"source":{"type":"source","id":"https://huggingface.co/blog/mps-pytorch-2-15","revision":"dd995177891b6382e0a079cfb6aeef9e943c77387be096ba11bb4108e132edb2","revisionKind":"sha256-source-text","title":"MPS in PyTorch 2.15","url":"https://huggingface.co/blog/mps-pytorch-2-15"},"status":"available","items":[],"next":null,"scope":"Explicit citations in public readings and public file attachments to this reading. Shared topics are not citations. Other artifact types need an explicit reference adapter."},"revisions":[{"id":"83b7af3658f4a700f2ae56cecf8905059a1cb2008ee8d59c2699b922d3ca8053","title":"Hugging Face says PyTorch 2.15 brings faster Mac-based AI workloads and FP8 support","argument":"Hugging Face’s PyTorch team describes upgrades to PyTorch 2.15’s MPS backend, which lets PyTorch use the GPU on Apple silicon Macs. The post reports support for FP8, a compact number format that uses half the storage of BF16, and new Metal GPU kernels for operations used in language-model decoding, audio, video and training.\n\nThe team reports substantial gains in specific tests: on an M3 Ultra, two mixture-of-experts models decoded 5–6.5 times faster than in PyTorch 2.14. In a Wan2.2 video-decoding workload, reported peak driver memory fell from about 270 GiB to 8 GiB after padding moved to Metal. These are results for the described hardware and workloads, not a guarantee of similar performance across Macs or models. The update also requires macOS 15 or later and Python 3.11 or later. The post presents PyTorch 2.16 improvements as work in progress, not features of 2.15.","topicIds":["intelligence-and-discovery","work-and-agency"],"domain":"work","claimType":"attributed reading","limits":"Performance and memory results are publisher-reported measurements for named hardware and workloads; the evidence does not establish general results across devices or applications. The post describes some PyTorch 2.16 changes as landed in nightlies or still in review; they are not presented as part of PyTorch 2.15.","speaker":{"name":"Irakli Salia, Khushi Agrawal","roleAtSource":"Article author"},"source":{"title":"MPS in PyTorch 2.15","publisher":"Hugging Face","format":"Article","url":"https://huggingface.co/blog/mps-pytorch-2-15","publishedAt":"2026-10-20T00:00:00.756Z","dateBasis":"Date stated by the publisher."},"evidence":[{"text":"Hugging Face’s PyTorch team says PyTorch 2.15 adds FP8 tensor support to the MPS backend on Mac.","excerpt":"PyTorch 2.15 adds torch.float8_e4m3fn tensors on MPS: one byte per value, half the storage of FP16 or BF16.","url":"https://huggingface.co/blog/mps-pytorch-2-15","relationship":"Source-stated"},{"text":"The post reports that, on an M3 Ultra with torch.compile, two mixture-of-experts models decoded 5–6.5 times faster than in PyTorch 2.14.","excerpt":"Mixture-of-experts models decode 5–6.5× faster than in 2.14: on an M3 Ultra with torch.compile, Qwen3.6-35B-A3B goes from 9.4 to 61.3 tokens/s and LFM2.5-8B-A1B from 23.6 to 123.6 tokens/s.","url":"https://huggingface.co/blog/mps-pytorch-2-15","relationship":"Source-stated"},{"text":"For the specified Wan2.2 video-decoding workload, the post reports that moving padding to Metal reduced peak driver memory from about 270 GiB to about 8 GiB.","excerpt":"With padding on Metal, peak driver memory drops from about 270 GiB to 8 GiB:","url":"https://huggingface.co/blog/mps-pytorch-2-15","relationship":"Source-stated"},{"text":"The reported results come from particular hardware and workloads; the post does not establish that other Macs or models will see the same gains.","excerpt":"On an M3 Ultra with torch.compile, MoE models generate about 1.3× more tokens per second:","url":"https://huggingface.co/blog/mps-pytorch-2-15","relationship":"Escape Meridian interpretation"},{"text":"The stated requirements for MPS with PyTorch 2.15 are macOS 15 or later and Python 3.11 or later.","excerpt":"You'll need an Apple silicon Mac with macOS 15 or later and Python 3.11 or later","url":"https://huggingface.co/blog/mps-pytorch-2-15","relationship":"Source-stated"}],"sourceMedia":{"status":"found","sourceUrl":"https://huggingface.co/blog/mps-pytorch-2-15","checkedAt":"2026-10-20T12:01:13.417Z","items":[],"note":"Media was declared by the source, but no asset passed the supported availability checks. Open the original source to view it."},"assumptions":[],"whatWouldChangeView":{"attribution":"Open question","text":"How well do these reported speed and memory improvements carry over to other Mac models and real-world workloads?"},"editorialComparisons":[],"live":{"title":"Hugging Face says PyTorch 2.15 brings faster Mac-based AI workloads and FP8 support","summary":"Hugging Face’s PyTorch team describes upgrades to PyTorch 2.15’s MPS backend, which lets PyTorch use the GPU on Apple silicon Macs. The post reports support for FP8, a compact number format that uses half the storage of BF16, and new Metal GPU kernels for operations used in language-model decoding, audio, video and training.\n\nThe team reports substantial gains in specific tests: on an M3 Ultra, two mixture-of-experts models decoded 5–6.5 times faster than in PyTorch 2.14. In a Wan2.2 video-decoding workload, reported peak driver memory fell from about 270 GiB to 8 GiB after padding moved to Metal. These are results for the described hardware and workloads, not a guarantee of similar performance across Macs or models. The update also requires macOS 15 or later and Python 3.11 or later. The post presents PyTorch 2.16 improvements as work in progress, not features of 2.15.","question":"How well do these reported speed and memory improvements carry over to other Mac models and real-world workloads?","claims":[{"text":"Hugging Face’s PyTorch team says PyTorch 2.15 adds FP8 tensor support to the MPS backend on Mac.","excerpt":"PyTorch 2.15 adds torch.float8_e4m3fn tensors on MPS: one byte per value, half the storage of FP16 or BF16.","support":"source-stated"},{"text":"The post reports that, on an M3 Ultra with torch.compile, two mixture-of-experts models decoded 5–6.5 times faster than in PyTorch 2.14.","excerpt":"Mixture-of-experts models decode 5–6.5× faster than in 2.14: on an M3 Ultra with torch.compile, Qwen3.6-35B-A3B goes from 9.4 to 61.3 tokens/s and LFM2.5-8B-A1B from 23.6 to 123.6 tokens/s.","support":"source-stated"},{"text":"For the specified Wan2.2 video-decoding workload, the post reports that moving padding to Metal reduced peak driver memory from about 270 GiB to about 8 GiB.","excerpt":"With padding on Metal, peak driver memory drops from about 270 GiB to 8 GiB:","support":"source-stated"},{"text":"The reported results come from particular hardware and workloads; the post does not establish that other Macs or models will see the same gains.","excerpt":"On an M3 Ultra with torch.compile, MoE models generate about 1.3× more tokens per second:","support":"interpretation"},{"text":"The stated requirements for MPS with PyTorch 2.15 are macOS 15 or later and Python 3.11 or later.","excerpt":"You'll need an Apple silicon Mac with macOS 15 or later and Python 3.11 or later","support":"source-stated"}],"limitations":["Performance and memory results are publisher-reported measurements for named hardware and workloads; the evidence does not establish general results across devices or applications.","The post describes some PyTorch 2.16 changes as landed in nightlies or still in review; they are not presented as part of PyTorch 2.15."],"mediaId":"c2b4b68d7e0027f0e4366133eb322fd84020df1d31b2a05734fa7c44edc22eb2","correctionReason":null,"id":"83b7af3658f4a700f2ae56cecf8905059a1cb2008ee8d59c2699b922d3ca8053","publicationId":"7be161ed-933a-45af-8b63-e77f65c19aa5","version":1,"sourceUrl":"https://huggingface.co/blog/mps-pytorch-2-15","sourceTitle":"MPS in PyTorch 2.15","publisher":"Hugging Face","publishedAt":"2026-10-20T00:00:00.756Z","originalPublished":{"value":"2026-10-20T00:00:00.756Z","precision":"instant","basis":"publisher_page"},"firstObservedAt":"2026-10-20T11:13:06.716Z","createdAt":"2026-10-20T12:02:10.412Z","historical":false,"entityIds":["hugging-face"],"topicIds":["intelligence-and-discovery","work-and-agency"],"media":[{"id":"c2b4b68d7e0027f0e4366133eb322fd84020df1d31b2a05734fa7c44edc22eb2","kind":"article","url":"https://huggingface.co/blog/mps-pytorch-2-15","sourceUrl":"https://huggingface.co/blog/mps-pytorch-2-15","label":"Read original","provenance":"source_link","verification":{"status":"verified","checkedAt":"2026-10-20T12:01:14.274Z","method":"acquired_source","contentType":"text/html"},"recommendationReason":"Recommended by Jev for understanding this source; checked by Luna."}],"sourceMedia":{"status":"found","sourceUrl":"https://huggingface.co/blog/mps-pytorch-2-15","checkedAt":"2026-10-20T12:01:13.417Z","items":[],"note":"Media was declared by the source, but no asset passed the supported availability checks. Open the original source to view it."},"editorialDecision":{"outcome":"accept","reasonCodes":["material_development"],"rubricVersion":"stream-admission-v5","mediaId":"c2b4b68d7e0027f0e4366133eb322fd84020df1d31b2a05734fa7c44edc22eb2","confidence":1,"provider":"vercel","model":"typesafe-ai/jev","inputHash":"f55325ed36e0a187d679e8bc46487c5cd6aff0ea3c9fc6876868e2a84d93460b","decidedAt":"2026-10-20T12:01:17.226Z"},"provenance":{"textHash":"dd995177891b6382e0a079cfb6aeef9e943c77387be096ba11bb4108e132edb2","observationId":"fedb60b1e3cab9d5aba1371f74490f68f930f69e54258da79bec615d8c0e8649","retrievedAt":"2026-10-20T12:01:13.417Z","kind":"publisher-page","preparer":{"model":"gpt-6-luna","runId":"7f69b293-0d42-4c93-8559-911c662490df"},"reviewer":{"model":"gpt-6-luna","runId":"5f64538d-9d87-4b57-813e-388ba491193b"}},"audit":{"status":"passed","reviewedAt":"2026-10-20T12:02:10.412Z","model":"anthropic/claude-opus-5.5"},"sourceAttribution":{"authors":[{"name":"Irakli Salia","url":"https://huggingface.co/Isalia20","kind":"Person"},{"name":"Khushi Agrawal","url":"https://huggingface.co/khushi-411","kind":"Person"}],"authorRole":"article-author","hosts":[],"status":"stated","authorRoster":{"truncated":false,"omitted":0,"assertionGroupsOmitted":0},"participation":[{"actor":{"name":"Irakli Salia","url":"https://huggingface.co/Isalia20","kind":"Person","actorId":null},"role":"author","scope":{"kind":"work-credit","locator":null},"literalCredit":"Irakli Salia","status":"stated","provenance":{"basis":"article-jsonld","sourceUrl":"https://huggingface.co/blog/mps-pytorch-2-15","locator":"document/html[1]/head[0]/script[41]@2175.author"},"assertionId":"40855d9c7bb4827e2455d3b1866dd0d7a756cbe96e11fbe1179a6c70bda0b76c:participation:0","identity":{"version":"entity-identity-v1","status":"unresolved","actorId":null,"canonicalActorId":null,"candidateActorIds":[],"assertions":[],"sourceObservedAt":"2026-10-20T12:01:13.417Z","knowledgeAsOf":null},"sourceVersion":{"snapshotId":"40855d9c7bb4827e2455d3b1866dd0d7a756cbe96e11fbe1179a6c70bda0b76c","sourceUrl":"https://huggingface.co/blog/mps-pytorch-2-15","contentSha256":"c8a3eb7dd82d1cfe9b28b3f09b1a53c0e94c1b55ee1411007ecbdfb93f89d6ca","textHash":"dd995177891b6382e0a079cfb6aeef9e943c77387be096ba11bb4108e132edb2","observedAt":"2026-10-20T12:01:13.417Z"}},{"actor":{"name":"Khushi Agrawal","url":"https://huggingface.co/khushi-411","kind":"Person","actorId":null},"role":"author","scope":{"kind":"work-credit","locator":null},"literalCredit":"Khushi Agrawal","status":"stated","provenance":{"basis":"article-jsonld","sourceUrl":"https://huggingface.co/blog/mps-pytorch-2-15","locator":"document/html[1]/head[0]/script[41]@2175.author"},"assertionId":"40855d9c7bb4827e2455d3b1866dd0d7a756cbe96e11fbe1179a6c70bda0b76c:participation:1","identity":{"version":"entity-identity-v1","status":"unresolved","actorId":null,"canonicalActorId":null,"candidateActorIds":[],"assertions":[],"sourceObservedAt":"2026-10-20T12:01:13.417Z","knowledgeAsOf":null},"sourceVersion":{"snapshotId":"40855d9c7bb4827e2455d3b1866dd0d7a756cbe96e11fbe1179a6c70bda0b76c","sourceUrl":"https://huggingface.co/blog/mps-pytorch-2-15","contentSha256":"c8a3eb7dd82d1cfe9b28b3f09b1a53c0e94c1b55ee1411007ecbdfb93f89d6ca","textHash":"dd995177891b6382e0a079cfb6aeef9e943c77387be096ba11bb4108e132edb2","observedAt":"2026-10-20T12:01:13.417Z"}},{"actor":{"name":"Hugging Face","url":"https://huggingface.co/","kind":"unknown","actorId":null},"role":"publisher","scope":{"kind":"publication","locator":null},"literalCredit":"Hugging Face","status":"stated","provenance":{"basis":"article-publisher","sourceUrl":"https://huggingface.co/blog/mps-pytorch-2-15","locator":"document/html[1]/head[0]/script[41]@2175.publisher"},"assertionId":"40855d9c7bb4827e2455d3b1866dd0d7a756cbe96e11fbe1179a6c70bda0b76c:participation:2","identity":{"version":"entity-identity-v1","status":"unresolved","actorId":null,"canonicalActorId":null,"candidateActorIds":[],"assertions":[],"sourceObservedAt":"2026-10-20T12:01:13.417Z","knowledgeAsOf":null},"sourceVersion":{"snapshotId":"40855d9c7bb4827e2455d3b1866dd0d7a756cbe96e11fbe1179a6c70bda0b76c","sourceUrl":"https://huggingface.co/blog/mps-pytorch-2-15","contentSha256":"c8a3eb7dd82d1cfe9b28b3f09b1a53c0e94c1b55ee1411007ecbdfb93f89d6ca","textHash":"dd995177891b6382e0a079cfb6aeef9e943c77387be096ba11bb4108e132edb2","observedAt":"2026-10-20T12:01:13.417Z"}}],"participationCoverage":{"total":3,"returned":3,"complete":true,"fullAssertions":"source-metadata-endpoint"},"distribution":null,"publisher":{"name":"Hugging Face","url":"https://huggingface.co/"},"sourceUrl":"https://huggingface.co/blog/mps-pytorch-2-15","snapshotId":"40855d9c7bb4827e2455d3b1866dd0d7a756cbe96e11fbe1179a6c70bda0b76c","contentSha256":"c8a3eb7dd82d1cfe9b28b3f09b1a53c0e94c1b55ee1411007ecbdfb93f89d6ca","textHash":"dd995177891b6382e0a079cfb6aeef9e943c77387be096ba11bb4108e132edb2","observedAt":"2026-10-20T12:01:13.417Z","basis":"publisher-page-metadata","sourceLinks":102,"linksTruncated":false,"metadataUrl":"/api/pipeline/stream/83b7af3658f4a700f2ae56cecf8905059a1cb2008ee8d59c2699b922d3ca8053/source"}}}],"audits":[{"publicationId":"7be161ed-933a-45af-8b63-e77f65c19aa5","verdict":"passed","findings":[{"dimension":"attribution","status":"pass","explanation":"The draft attributes the claims to Hugging Face's PyTorch team, which matches the post's self-description and its Hugging Face publication. The performance figures are framed as reported by the team.","excerpt":"we're the PyTorch team at Hugging Face"},{"dimension":"summary","status":"pass","explanation":"The draft explains MPS (the PyTorch backend that uses the GPU on Apple silicon Macs) and FP8 (a compact number format) in plain language. It summarizes the main reported gains and the new requirements. It also separates the 2.16 work-in-progress items from what ships in 2.15. The question about whether results generalize follows from the evidence. Mixture-of-experts is not explained, but the meaning remains understandable.","excerpt":"one of our focus areas is the MPS backend, where the goal is to make your Mac a first-class place to run and train PyTorch models"},{"dimension":"date","status":"pass","explanation":"The originalPublished date of 2026-10-20 matches the publication date shown on the post.","excerpt":"Published\nOctober 20, 2026"},{"dimension":"support","status":"pass","explanation":"The FP8, MoE speedup, Wan2.2 memory and requirement claims match the source text. The 5–6.5× range is consistent with the two named models: 9.4 to 61.3 tokens/s and 23.6 to 123.6 tokens/s. The hardware-specificity claim is properly labeled as interpretation and stays conditional. No benefits are invented.","excerpt":"Qwen3.6-35B-A3B goes from 9.4 to 61.3 tokens/s and LFM2.5-8B-A1B from 23.6 to 123.6 tokens/s"},{"dimension":"media","status":"pass","explanation":"The selected media is the verified link to the original source article itself, which is the most direct and relevant choice.","excerpt":null}],"createdAt":"2026-10-20T12:02:10.412Z","model":"anthropic/claude-opus-5.5"}],"correctionUrl":"https://escapemeridian.com/corrections/"}