{
    "componentChunkName": "component---src-templates-note-note-js",
    "path": "/notes/ahmdals-law",
    "result": {"data":{"mdx":{"body":"var _excluded = [\"components\"];\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\n/* @jsxRuntime classic */\n/* @jsx mdx */\n\nvar _frontmatter = {};\nvar layoutProps = {\n  _frontmatter: _frontmatter\n};\nvar MDXLayout = \"wrapper\";\nreturn function MDXContent(_ref) {\n  var components = _ref.components,\n    props = _objectWithoutProperties(_ref, _excluded);\n  return mdx(MDXLayout, _extends({}, layoutProps, props, {\n    components: components,\n    mdxType: \"MDXLayout\"\n  }), mdx(\"p\", null, \"Amdahl's law is a principle in computer architecture and parallel computing that quantifies the potential improvement of a system when only part of it is enhanced. It was formulated by computer scientist Gene Amdahl in 1967.\"), mdx(\"p\", null, \"Amdahl's law states that the speedup of a program's execution time, when a particular portion of the program is parallelized or made faster, is limited by the portion of the program that cannot be parallelized or made faster. In other words, if a program has a sequential portion that cannot be parallelized, then no matter how much you improve the parallelizable portion, the overall speedup of the program will always be limited.\"), mdx(\"p\", null, \"Mathematically, Amdahl's law can be expressed as:\"), mdx(\"p\", null, \"\", mdx(\"a\", {\n    parentName: \"p\",\n    \"href\": \"/notes/Speedup\",\n    \"title\": \"Speedup\"\n  }, \"Speedup\"), \" = 1 / ( (1 - P) + (P / S) )\"), mdx(\"p\", null, \"Where:\"), mdx(\"ul\", null, mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"Speedup is the improvement in performance achieved by parallelizing a portion of the program.\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"P is the proportion of the program that can be parallelized.\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"S is the speedup factor achieved by \", mdx(\"a\", {\n    parentName: \"li\",\n    \"href\": \"/notes/parallelizing\",\n    \"title\": \"parallelizing\"\n  }, \"parallelizing\"), \" the parallelizable portion.\")), mdx(\"p\", null, \"Amdahl's law highlights the importance of identifying and optimizing the critical sequential sections of a program to achieve the best possible speedup. It is often used to analyze the potential benefits of parallelization in computing systems and guide \", mdx(\"a\", {\n    parentName: \"p\",\n    \"href\": \"/notes/optimization\",\n    \"title\": \"optimization\"\n  }, \"optimization\"), \" efforts.\"), mdx(\"p\", null, \"\", mdx(\"a\", {\n    parentName: \"p\",\n    \"href\": \"/notes/generated-by-chatgpt\",\n    \"title\": \"generated by chatgpt\"\n  }, \"generated by chatgpt\"), \"\"), mdx(\"p\", null, mdx(\"a\", {\n    parentName: \"p\",\n    \"href\": \"https://chatgpt.com/c/66ffbf33-6750-8005-83bf-a5821ca88332\"\n  }, \"https://chatgpt.com/c/66ffbf33-6750-8005-83bf-a5821ca88332\")), mdx(\"p\", null, \"!\", mdx(\"a\", {\n    parentName: \"p\",\n    \"href\": \"/notes/Screenshot-2024-10-04-at-3.42.49-PM.png\",\n    \"title\": \"Screenshot 2024-10-04 at 3.42.49 PM.png\"\n  }, \"Screenshot 2024-10-04 at 3.42.49 PM.png\"), \"\"));\n}\n;\nMDXContent.isMDXComponent = true;","inboundReferences":[]}},"pageContext":{"slug":"ahmdals-law","node":{"childMdx":{"slug":"ahmdals-law"}}}},
    "staticQueryHashes": []}