Palette 1.0 Production Version ready for Commercial Deployments

Blog

This coming week, SiMa.ai ships the Production Release (1.0) of its  Palette ML Developer tools, enabling companies designing with its purpose-built MLSoC device to release production software for their end products. The production release enables customers to combine SiMa software with their embedded ML applications to provide end market ML edge system solutions. This is a key step in the development of SiMa’s edge MLSoC as it enables scaling of silicon production volumes and accelerates the release of ML solutions across the full breadth of the edge marketplace. Leverage of the Palette software platform is key in customers’ ease of development and faster time to market for their products.

This is a major milestone for the company which embarked on this journey over four years ago to provide an effortless ML programming experience for its purpose built for the edge ML System on Chip. SiMa’s MLSoC silicon delivers a truly integrated edge ML solution that can receive and process real time video, radar, lidar and other sampled data to produce a comprehensive edge ML solution without connectivity to the cloud. The MLSoC’s huge compute capabilities to process data in real time is only unlocked when it can be easily programmed by a broad range of programmers. Since ML solutions change significantly over the life of a product, they require constantly updating of the code to reflect changes in data, models and algorithms to keep pace with new product requirements.

SiMa focused on the very beginning that one of the key challenges in getting edge ML devices to market is the difficulty programming the embedded ML silicon to deliver an edge ML product. Many edge ML products require a small army of embedded programmers to hand code the algorithms to achieve the  performance to process real-time data streams, otherwise many of the benefits of edge ML are lost. ML programming has been usually focused on the cloud,  where the programming was simplified in exchange for utilizing massive amounts of computing power,  consuming significant power and cost to operate. This trade-off made it possible for many data scientists to develop initial cloud based ML solutions, but they have remained difficult to scale due to high cloud computing costs. SiMa.ai focused on an approach to simplify the programming edge ML with key principles of Any, 10x and pushbutton. These principles have helped democratize the ability of companies large and small to migrate their cloud based algorithms to the edge.

The Palette 1.0 software release provides updates to SiMa’s industry leading ML Compiler,  which converts 32-bit floating point machine learning models into binary run-time code for execution on the 50 TOPS MLA core and ARM A65 contained within the MLSoC. The compiler update provides for enhanced quantization techniques when converting the fp32 model to an 8-bit integer representation. The developer has the option to parse the network layers to execute on different precision processing elements within the MLSoC device, ensuring that the model accuracy can be obtained in the design process. The ML Compiler update also features the ability to support large tensor models, while providing layer parsing and buffering to ensure that these large tensor models can utilize off-chip DRAM memory to support the large model file sizes needed in these configurations.

The Palette 1.0 has updated the pushbutton build process which assembles, schedules and orchestrates the heterogeneous processor execution, coordinating vision processing, ML inferencing and application code execution with a single simple development flow. This avoids the need for each processor executable to be painstakingly built with its own tools flow and then integrated with a manual and error prone process. The software update streamlines this coordination with an ability to support both Python based pipeline or Gstreamer based pipeline processing, with Python providing a methodology for quick functional results before developing more optimized Gstreamer based pipeline processing. The release has augmented the rich set of processing plug-ins and example ML pipelines to further aid the developer.

The Palette 1.0 software release contains a significant set of features as well as the maturation of the underlying run-time environment on the MLSoC. The MLSoC features an embedded Linux operating system based on the latest Yocto distribution, version 4.0, incorporating the Linux kernel 6.1.22, glibc 2.35 and ~300 other recipe upgrades. This compact but powerful implementation of Linux enables the deployment of a run-time environment that manages the execution and scheduling of the ten embedded microprocessors as well as the Machine Learning Accelerator (MLA) contained within the MLSoC device. The Palette 1.0 software release contains a modular Board Support Package (BSP) for Linux that can be easily modified by developers to incorporate custom drivers and peripherals to their design. This Yocto based BSP has an open source repository of the source code modifications to aid the developer in porting and customizing their application environment to the MLSoC. The BSP and associated source code release is provided on the SiMa github site here https://www.github.com/sima-ai. The complete device build software integrating the Linux build, BSP and proprietary drivers and system software is provided in a device build with the Palette 1.0 host software build.  This ensures that these two components are tested for interoperability for production solutions. The MLSoC build components can be combined with the developers code and distributed to end customers as part of the final product’s commercial software build.

The Palette 1.0 software release is provided to customers of our board level products (featured here) on the SiMa Developer portal which can be accessed at https://developer.sima.ai. The Palette software release provides an Over-The-Air (OTA) software update capability to keep the boards current with the latest build version. The developer website also provides a collection of documents that contain a user guide and reference documentation on bring-up,  apis and programming feature sets. Also included are videos demonstrating the installation and configuration of the Palette software as well as the set-up of the developer board. The Palette SW runs in a Docker container and can be hosted on Windows/Mac/Linux machines. The developer board conveniently connects via a serial port for configuring,  downloading,  execution and management of the MLSoC software run-time environment.

SiMa is leading the ML edge market with production development software, production device build software,  production boards and production silicon. We look forward to you downloading and experiencing SiMa’s effortless ML edge programming environment, Palette is ready for production!