{"id":557117,"date":"2026-05-27T03:32:42","date_gmt":"2026-05-27T03:32:42","guid":{"rendered":"https:\/\/notonbluray.com\/blog\/?p=557117"},"modified":"2026-05-27T03:34:51","modified_gmt":"2026-05-27T03:34:51","slug":"benchmarking-aes-256-sha256-and-crc-64-on-apple-silicon","status":"publish","type":"post","link":"https:\/\/notonbluray.com\/blog\/benchmarking-aes-256-sha256-and-crc-64-on-apple-silicon\/","title":{"rendered":"Benchmarking AES-256, SHA256 and CRC-64 on Apple Silicon"},"content":{"rendered":"<div itemscope itemtype=\"http:\/\/schema.org\/BlogPosting\">\n<p>Just a quick one &#8211; I needed some numbers for crypto and hashing performance on Apple Silicon so I vibe coded something quick and dirty to establish some, hoping it is useful for someone out there.. I only have access to two Apple Silicon CPUs a <a href=\"https:\/\/support.apple.com\/en-us\/111867\" type=\"link\" id=\"https:\/\/support.apple.com\/en-us\/111867\">M2 Macbook Air<\/a>, and a <a href=\"https:\/\/support.apple.com\/en-us\/121555\" type=\"link\" id=\"https:\/\/support.apple.com\/en-us\/121555\">M4 Pro Macmini<\/a>. All numbers are warmed up and averaged across multiple runs<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">SHA-256<\/h2>\n\n\n\n<p>Using CC_SHA256 which provides hardware SHA2 acceleration.<\/p>\n\n\n\n<figure class=\"wp-block-table is-style-stripes\"><table class=\"has-fixed-layout\"><tbody><tr><td><strong>Block size<\/strong><\/td><td><strong>M2 Mac Book Air (GiB\/Sec)<\/strong><\/td><td><strong>M4 Pro Macmini (GiB\/Sec)<\/strong><\/td><\/tr><tr><td><strong>4 KiB<\/strong><\/td><td>2.33<\/td><td>2.97<\/td><\/tr><tr><td><strong>8 KiB<\/strong><\/td><td>2.45<\/td><td>3.13<\/td><\/tr><tr><td><strong>16 KiB<\/strong><\/td><td>2.51<\/td><td>3.18<\/td><\/tr><tr><td><strong>32 KiB<\/strong><\/td><td>2.54<\/td><td>3.21<\/td><\/tr><tr><td><strong>64 KiB<\/strong><\/td><td>2.55<\/td><td>3.26<\/td><\/tr><tr><td><strong>128 KiB<\/strong><\/td><td>2.56<\/td><td>3.27<\/td><\/tr><tr><td><strong>256 KiB<\/strong><\/td><td>2.57<\/td><td>3.28<\/td><\/tr><tr><td><strong>512 KiB<\/strong><\/td><td>2.57<\/td><td>3.28<\/td><\/tr><tr><td><strong>1 MiB<\/strong><\/td><td>2.57<\/td><td>3.27<\/td><\/tr><tr><td><strong>2 MiB<\/strong><\/td><td>2.57<\/td><td>3.27<\/td><\/tr><tr><td><strong>4 MiB<\/strong><\/td><td>2.57<\/td><td>3.27<\/td><\/tr><tr><td><strong>8 MiB<\/strong><\/td><td>2.57<\/td><td>3.28<\/td><\/tr><tr><td><strong>16 MiB<\/strong><\/td><td>2.56<\/td><td>3.28<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">AES-256<\/h2>\n\n\n\n<p>Via CCCrypt, using ECB mode.<\/p>\n\n\n\n<figure class=\"wp-block-table is-style-stripes\"><table class=\"has-fixed-layout\"><tbody><tr><td><strong>Block size<\/strong><\/td><td><strong>M2 Mac Book Air (GiB\/Sec)<\/strong><\/td><td><strong>M4 Pro Macmini (GiB\/Sec)<\/strong><\/td><\/tr><tr><td><strong>4 KiB<\/strong><\/td><td>6.43<\/td><td>8.66<\/td><\/tr><tr><td><strong>8 KiB<\/strong><\/td><td>7.73<\/td><td>10.89<\/td><\/tr><tr><td><strong>16 KiB<\/strong><\/td><td>8.59<\/td><td>12.45<\/td><\/tr><tr><td><strong>32 KiB<\/strong><\/td><td>9.12<\/td><td>13.46<\/td><\/tr><tr><td><strong>64 KiB<\/strong><\/td><td>9.21<\/td><td>13.84<\/td><\/tr><tr><td><strong>128 KiB<\/strong><\/td><td>9.28<\/td><td>14.32<\/td><\/tr><tr><td><strong>256 KiB<\/strong><\/td><td>9.35<\/td><td>14.56<\/td><\/tr><tr><td><strong>512 KiB<\/strong><\/td><td>9.39<\/td><td>14.53<\/td><\/tr><tr><td><strong>1 MiB<\/strong><\/td><td>9.40<\/td><td>14.63<\/td><\/tr><tr><td><strong>2 MiB<\/strong><\/td><td>9.41<\/td><td>14.66<\/td><\/tr><tr><td><strong>4 MiB<\/strong><\/td><td>9.43<\/td><td>14.70<\/td><\/tr><tr><td><strong>8 MiB<\/strong><\/td><td>9.42<\/td><td>14.66<\/td><\/tr><tr><td><strong>16 MiB<\/strong><\/td><td>9.37<\/td><td>14.49<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">CRC-64 PMULL<\/h2>\n\n\n\n<p>Since there is no specific support for CRC in CCCrypt, this is just hand-rolled using the ARM NEON PMULL instruction to accelerate the calculation (without it performance is in the hundreds of megabytes per second). This is using the ECMA constant 0x42F0E1EBA9EA3693.<\/p>\n\n\n\n<p> <\/p>\n\n\n\n<figure class=\"wp-block-table is-style-stripes\"><table class=\"has-fixed-layout\"><tbody><tr><td><strong>Block size<\/strong><\/td><td><strong>M2 Mac Book Air (GiB\/Sec)<\/strong><\/td><td><strong>M4 Pro Macmini (GiB\/Sec)<\/strong><\/td><\/tr><tr><td><strong>4 KiB<\/strong><\/td><td>58.89<\/td><td>67.50<\/td><\/tr><tr><td><strong>8 KiB<\/strong><\/td><td>49.98<\/td><td>61.30<\/td><\/tr><tr><td><strong>16 KiB<\/strong><\/td><td>53.52<\/td><td>63.76<\/td><\/tr><tr><td><strong>32 KiB<\/strong><\/td><td>51.17<\/td><td>63.15<\/td><\/tr><tr><td><strong>64 KiB<\/strong><\/td><td>50.74<\/td><td>63.09<\/td><\/tr><tr><td><strong>128 KiB<\/strong><\/td><td>50.79<\/td><td>62.95<\/td><\/tr><tr><td><strong>256 KiB<\/strong><\/td><td>50.35<\/td><td>62.50<\/td><\/tr><tr><td><strong>512 KiB<\/strong><\/td><td>50..36<\/td><td>61.72<\/td><\/tr><tr><td><strong>1 MiB<\/strong><\/td><td>50.28<\/td><td>57.87<\/td><\/tr><tr><td><strong>2 MiB<\/strong><\/td><td>50.34<\/td><td>61.36<\/td><\/tr><tr><td><strong>4 MiB<\/strong><\/td><td>50.27<\/td><td>61.58<\/td><\/tr><tr><td><strong>8 MiB<\/strong><\/td><td>50.29<\/td><td>61.38<\/td><\/tr><tr><td><strong>16 MiB<\/strong><\/td><td>49.67<\/td><td>61.01<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">Conclusion<\/h2>\n\n\n\n<p>Both the M2 and M4 Pro perform excellently here, worth noting that there is not a huge generational difference evident.  <\/p>\n<\/div>","protected":false},"excerpt":{"rendered":"<p>Just a quick one &#8211; I needed some numbers for crypto and hashing performance on Apple Silicon so I vibe coded something quick and dirty to establish some, hoping it is useful for someone out there.. I only have access to two Apple Silicon CPUs a M2 Macbook Air, and a M4 Pro Macmini. All [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[72],"tags":[114,117,120,116,118,119,115],"class_list":["post-557117","post","type-post","status-publish","format-standard","hentry","category-mac","tag-aes","tag-apple-silicon","tag-benchmark","tag-crc-64","tag-m2","tag-m4","tag-sha-256"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.6 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Benchmarking AES-256, SHA256 and CRC-64 on Apple Silicon - Not on Blu-ray<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/notonbluray.com\/blog\/benchmarking-aes-256-sha256-and-crc-64-on-apple-silicon\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Benchmarking AES-256, SHA256 and CRC-64 on Apple Silicon - Not on Blu-ray\" \/>\n<meta property=\"og:description\" content=\"Just a quick one &#8211; I needed some numbers for crypto and hashing performance on Apple Silicon so I vibe coded something quick and dirty to establish some, hoping it is useful for someone out there.. I only have access to two Apple Silicon CPUs a M2 Macbook Air, and a M4 Pro Macmini. All [&hellip;]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/notonbluray.com\/blog\/benchmarking-aes-256-sha256-and-crc-64-on-apple-silicon\/\" \/>\n<meta property=\"og:site_name\" content=\"Not on Blu-ray\" \/>\n<meta property=\"article:published_time\" content=\"2026-05-27T03:32:42+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2026-05-27T03:34:51+00:00\" \/>\n<meta name=\"author\" content=\"Link\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Link\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"2 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/notonbluray.com\\\/blog\\\/benchmarking-aes-256-sha256-and-crc-64-on-apple-silicon\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/notonbluray.com\\\/blog\\\/benchmarking-aes-256-sha256-and-crc-64-on-apple-silicon\\\/\"},\"author\":{\"name\":\"Link\",\"@id\":\"https:\\\/\\\/notonbluray.com\\\/blog\\\/#\\\/schema\\\/person\\\/bd31ad218b684e12e90bbc2db3f6e650\"},\"headline\":\"Benchmarking AES-256, SHA256 and CRC-64 on Apple Silicon\",\"datePublished\":\"2026-05-27T03:32:42+00:00\",\"dateModified\":\"2026-05-27T03:34:51+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/notonbluray.com\\\/blog\\\/benchmarking-aes-256-sha256-and-crc-64-on-apple-silicon\\\/\"},\"wordCount\":234,\"keywords\":[\"AES\",\"Apple Silicon\",\"Benchmark\",\"CRC-64\",\"M2\",\"M4\",\"SHA-256\"],\"articleSection\":[\"Mac\"],\"inLanguage\":\"en-US\"},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/notonbluray.com\\\/blog\\\/benchmarking-aes-256-sha256-and-crc-64-on-apple-silicon\\\/\",\"url\":\"https:\\\/\\\/notonbluray.com\\\/blog\\\/benchmarking-aes-256-sha256-and-crc-64-on-apple-silicon\\\/\",\"name\":\"Benchmarking AES-256, SHA256 and CRC-64 on Apple Silicon - Not on Blu-ray\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/notonbluray.com\\\/blog\\\/#website\"},\"datePublished\":\"2026-05-27T03:32:42+00:00\",\"dateModified\":\"2026-05-27T03:34:51+00:00\",\"author\":{\"@id\":\"https:\\\/\\\/notonbluray.com\\\/blog\\\/#\\\/schema\\\/person\\\/bd31ad218b684e12e90bbc2db3f6e650\"},\"breadcrumb\":{\"@id\":\"https:\\\/\\\/notonbluray.com\\\/blog\\\/benchmarking-aes-256-sha256-and-crc-64-on-apple-silicon\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/notonbluray.com\\\/blog\\\/benchmarking-aes-256-sha256-and-crc-64-on-apple-silicon\\\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/notonbluray.com\\\/blog\\\/benchmarking-aes-256-sha256-and-crc-64-on-apple-silicon\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/notonbluray.com\\\/blog\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Benchmarking AES-256, SHA256 and CRC-64 on Apple Silicon\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/notonbluray.com\\\/blog\\\/#website\",\"url\":\"https:\\\/\\\/notonbluray.com\\\/blog\\\/\",\"name\":\"Not on Blu-ray\",\"description\":\"Reviews of streaming media\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/notonbluray.com\\\/blog\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/notonbluray.com\\\/blog\\\/#\\\/schema\\\/person\\\/bd31ad218b684e12e90bbc2db3f6e650\",\"name\":\"Link\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Benchmarking AES-256, SHA256 and CRC-64 on Apple Silicon - Not on Blu-ray","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/notonbluray.com\/blog\/benchmarking-aes-256-sha256-and-crc-64-on-apple-silicon\/","og_locale":"en_US","og_type":"article","og_title":"Benchmarking AES-256, SHA256 and CRC-64 on Apple Silicon - Not on Blu-ray","og_description":"Just a quick one &#8211; I needed some numbers for crypto and hashing performance on Apple Silicon so I vibe coded something quick and dirty to establish some, hoping it is useful for someone out there.. I only have access to two Apple Silicon CPUs a M2 Macbook Air, and a M4 Pro Macmini. All [&hellip;]","og_url":"https:\/\/notonbluray.com\/blog\/benchmarking-aes-256-sha256-and-crc-64-on-apple-silicon\/","og_site_name":"Not on Blu-ray","article_published_time":"2026-05-27T03:32:42+00:00","article_modified_time":"2026-05-27T03:34:51+00:00","author":"Link","twitter_misc":{"Written by":"Link","Est. reading time":"2 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/notonbluray.com\/blog\/benchmarking-aes-256-sha256-and-crc-64-on-apple-silicon\/#article","isPartOf":{"@id":"https:\/\/notonbluray.com\/blog\/benchmarking-aes-256-sha256-and-crc-64-on-apple-silicon\/"},"author":{"name":"Link","@id":"https:\/\/notonbluray.com\/blog\/#\/schema\/person\/bd31ad218b684e12e90bbc2db3f6e650"},"headline":"Benchmarking AES-256, SHA256 and CRC-64 on Apple Silicon","datePublished":"2026-05-27T03:32:42+00:00","dateModified":"2026-05-27T03:34:51+00:00","mainEntityOfPage":{"@id":"https:\/\/notonbluray.com\/blog\/benchmarking-aes-256-sha256-and-crc-64-on-apple-silicon\/"},"wordCount":234,"keywords":["AES","Apple Silicon","Benchmark","CRC-64","M2","M4","SHA-256"],"articleSection":["Mac"],"inLanguage":"en-US"},{"@type":"WebPage","@id":"https:\/\/notonbluray.com\/blog\/benchmarking-aes-256-sha256-and-crc-64-on-apple-silicon\/","url":"https:\/\/notonbluray.com\/blog\/benchmarking-aes-256-sha256-and-crc-64-on-apple-silicon\/","name":"Benchmarking AES-256, SHA256 and CRC-64 on Apple Silicon - Not on Blu-ray","isPartOf":{"@id":"https:\/\/notonbluray.com\/blog\/#website"},"datePublished":"2026-05-27T03:32:42+00:00","dateModified":"2026-05-27T03:34:51+00:00","author":{"@id":"https:\/\/notonbluray.com\/blog\/#\/schema\/person\/bd31ad218b684e12e90bbc2db3f6e650"},"breadcrumb":{"@id":"https:\/\/notonbluray.com\/blog\/benchmarking-aes-256-sha256-and-crc-64-on-apple-silicon\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/notonbluray.com\/blog\/benchmarking-aes-256-sha256-and-crc-64-on-apple-silicon\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/notonbluray.com\/blog\/benchmarking-aes-256-sha256-and-crc-64-on-apple-silicon\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/notonbluray.com\/blog\/"},{"@type":"ListItem","position":2,"name":"Benchmarking AES-256, SHA256 and CRC-64 on Apple Silicon"}]},{"@type":"WebSite","@id":"https:\/\/notonbluray.com\/blog\/#website","url":"https:\/\/notonbluray.com\/blog\/","name":"Not on Blu-ray","description":"Reviews of streaming media","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/notonbluray.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Person","@id":"https:\/\/notonbluray.com\/blog\/#\/schema\/person\/bd31ad218b684e12e90bbc2db3f6e650","name":"Link"}]}},"_links":{"self":[{"href":"https:\/\/notonbluray.com\/blog\/wp-json\/wp\/v2\/posts\/557117","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/notonbluray.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/notonbluray.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/notonbluray.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/notonbluray.com\/blog\/wp-json\/wp\/v2\/comments?post=557117"}],"version-history":[{"count":2,"href":"https:\/\/notonbluray.com\/blog\/wp-json\/wp\/v2\/posts\/557117\/revisions"}],"predecessor-version":[{"id":557120,"href":"https:\/\/notonbluray.com\/blog\/wp-json\/wp\/v2\/posts\/557117\/revisions\/557120"}],"wp:attachment":[{"href":"https:\/\/notonbluray.com\/blog\/wp-json\/wp\/v2\/media?parent=557117"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/notonbluray.com\/blog\/wp-json\/wp\/v2\/categories?post=557117"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/notonbluray.com\/blog\/wp-json\/wp\/v2\/tags?post=557117"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}