From 3837efe62d947593f573fb5a611f939d0931e17e Mon Sep 17 00:00:00 2001 From: Vijay Janapa Reddi Date: Wed, 15 Nov 2023 10:28:07 -0500 Subject: [PATCH] Updating links / format fixes --- hw_acceleration.qmd | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/hw_acceleration.qmd b/hw_acceleration.qmd index bc8740eb..6b139dd5 100644 --- a/hw_acceleration.qmd +++ b/hw_acceleration.qmd @@ -382,7 +382,7 @@ The recent groundbreaking research conducted by OpenAI [@brown2020language] with ### Central Processing Units (CPUs) -The term CPUs has a long history that dates back to 1955 [@weik_survey_1955] while the first microprocessor CPU–the Intel 4004–was invented in 1971([Who Invented the Microprocessor?](https://computerhistory.org/blog/who-invented-the-microprocessor/)). Compilers compile high-level programming languages like Python, Java, or C to assembly instructions (x86, ARM, RISC-V, etc.) for CPUs to process. The set of instructions a CPU understands is called the “instruction set” and must be agreed upon by both the hardware and software running atop it (See section 5 for a more in-depth description on instruction set architectures–ISAs). +The term CPUs has a long history that dates back to 1955 [@weik_survey_1955] while the first microprocessor CPU–the Intel 4004–was invented in 1971 ([Who Invented the Microprocessor?](https://computerhistory.org/blog/who-invented-the-microprocessor/)). Compilers compile high-level programming languages like Python, Java, or C to assembly instructions (x86, ARM, RISC-V, etc.) for CPUs to process. The set of instructions a CPU understands is called the “instruction set” and must be agreed upon by both the hardware and software running atop it (See section 5 for a more in-depth description on instruction set architectures–ISAs). An overview of significant developments in CPUs: @@ -668,9 +668,9 @@ Standardized benchmarking provides quantified, comparable evaluation of AI accel ## Challenges and Solutions -### Portability/Compatibility Issues +AI accelerators offer impressive performance improvements, but their integration into the broader AI landscape is often hindered by significant portability and compatibility challenges. The crux of the issue lies in the diversity of the AI ecosystem — a vast array of machine learning accelerators, frameworks and programming languages exists, each with its unique features and requirements. -AI accelerators offer impressive performance improvements, but their integration into the broader AI landscape is often hindered by significant portability and compatibility challenges. The crux of the issue lies in the diversity of the AI ecosystem — a vast array of machine learning frameworks and programming languages exists, each with its unique features and requirements. +### Portability/Compatibility Issues Developers frequently encounter difficulties when attempting to transfer their AI models from one hardware environment to another. For example, a machine learning model developed for a desktop environment in Python using the PyTorch framework, optimized for an Nvidia GPU, may not easily transition to a more constrained device such as the Arduino Nano 33 BLE. This complexity stems from stark differences in programming requirements — Python and PyTorch on the desktop versus a C++ environment on an Arduino, not to mention the shift from x86 architecture to ARM ISA. @@ -682,7 +682,7 @@ To address these hurdles, the AI industry is moving towards several solutions: ##### Standardization Initiatives -The Open Neural Network Exchange (ONNX) is at the forefront of this pursuit, proposing an open and shared ecosystem that promotes model interchangeability. ONNX facilitates the use of AI models across various frameworks, allowing for models trained in one environment to be efficiently deployed in another, which significantly reduces the need for time-consuming rewrites or adjustments. +The [Open Neural Network Exchange (ONNX)](https://onnx.ai/) is at the forefront of this pursuit, proposing an open and shared ecosystem that promotes model interchangeability. ONNX facilitates the use of AI models across various frameworks, allowing for models trained in one environment to be efficiently deployed in another, which significantly reduces the need for time-consuming rewrites or adjustments. ##### Cross-Platform Frameworks