How it Works

Cut your development time from months to days

Input your Code

Upload your Python, Julia, or MATLAB research code to create optimized, edge-ready low-level code.

Input your code

Define Your Runtime

Pick a deployment chipset from our curated optimizers or customize your own. Set up unit and regression tests, and define constraints like memory usage.

Customizable runtime

Automate and Run

Launch with our automated stack. Your code automatically adapts to the chosen runtime, enhancing efficiency with each iteration.

Automated stack
Code snippet representing user code

< 1 >

Input your code

Load your high level prototype code written in Python, Matlab or Julia in your favorite IDE with the CodeMetal plugin installed. Our environment automatically tracks complex module and library dependencies, identifies low level language equivalents and provides a transpilation and deployment plan for your edge environment of choice.

< 2 >

Define your runtime

Choose your edge environment configuration - pick a CPU (e.g. x86 or ARM/RISC), and a combination of accelerators including GPUs (e.g. NVidia, AMD or Qualcomm), FPGAs (e.g., Xilinx - Spartan, Virtex, Artix; Altera - Stratix, Cyclone; Actel or others). Specify available resources - RAM, VRAM, number of cores, number of LEs and others. Choose preferred toolchains (e.g., ROCm, ONNX, Vivado) you would like to integrate with your build.

Code snippet representing optimization and validation
Code snippet representing accelerator code
Code snippet representing generated code

< 3 >

Automate and Run

Our agentic workflow will automatically generate a transpilation and deployment plan for your edge environment. You can interact with or simply execute the plan to produce generated code that will include embedded C/C++ or Rust for the CPU, synthesizable VHDL or Verilog for FPGAs, Cuda, HIP or ONNX code for GPUs. Then choose among variants automatically optimized for memory, runtime performance, code size or power consumption and build your binaries.

< 4 >

Track Changes Between Generated and Input Code

Making changes to the generated code is easy. CodeMetal generates code that conforms to your coding standards and is easily readable by developers. Plus, we integrate into standard IDEs for team collaboration and code versioning tools. CodeMetal will detect optimizations you want to manually make to generated code and suggest matching changes and annotations to your input code.

Code snippet comparation between input code and generated code

“Code Metal is accelerating development at the edge faster than any of its peers at a time where edge deployments are scaling rapidly,”

Michael Brown

Former CEO of Symantec & DIU Director

Benefits

Maximize your development potential

Discover the benefits of streamlined coding, high-quality standards, and robust security with CodeMetal.

Accelerate Development

Code directly in a high level language, save months of development time.

Code snippet

Standardized Readable Code

Generate code that’s readable, set coding standards for output.

Generation of readable code

On-Premise Security

Secure, run completely on premise without talking to the cloud.

Security

“Code Metal has been transformational in designing, building, and delivering intelligence into our logistics network, It’s revolutionized how we think about the supply chain.”

Chris Hartnoll

CEO of HICO Investments 

shield-capital-logotype
x-pressfeeders-logotype
afwerx-logotype
J2 logotype
Nvidia logotype
Tigris Systems logotype
Microsoft logotype
Google logotype
L3Harris logotype