Key Functions

Project Management

MindStudio provides a range of functions to support project management, including creating, opening, closing, and deleting projects, as well as adding project directories and setting project properties.

Integrated Inference

The Ascend Model Inference Tool (AMIT) is an integrated inference tool that enables users to access a range of model analysis, model conversion, offline model dump, accuracy comparison, and performance analysis tools through a single, unified portal, improving the development efficiency. It also provides step-by-step guidance to facilitate users' understanding of the inference development process and make it easier to use.

Analysis and Migration

  • X2MindSpore migrates PyTorch and TensorFlow training scripts to code that can run in MindSpore.
  • PyTorch GPU2Ascend analyzes operators supported by PyTorch training scripts and migrates the scripts from GPU platforms to the Ascend NPU platform.

Model Training

MindStudio runs the training framework, submits the scripts, datasets, and parameters to be executed by the framework to the Graph Engine (GE), and instructs the GE to perform network analysis and output the analysis results through APIs. MindStudio then displays the network analysis results on the graphical user interface (GUI).

Model Conversion

Models trained in frameworks such as Caffe and TensorFlow can be converted into offline models compatible with the Ascend AI Processor by using the ATC. During model conversion, you can enable operator scheduling tuning, weight data rearrangement, and memory optimization to preprocess your model without depending on the device.

Application Development

MindX SDK-based application development: The MindX SDK adopts a modular design to encapsulate each functional unit in the service process into an independent plugin, and connect all plugins to quickly construct a service.

MindStudio uses the MindX SDK to enable visualized process orchestration. You can drag plugins on the canvas to organize them, manage the overall process, and generate pipeline files for development.

AscendCL-based application development: You can also use MindStudio to develop Ascend Computing Language (AscendCL) application projects. With the C language API library provided by AscendCL, you can manage and schedule Ascend hardware compute resources, and perform deep learning inference, image preprocessing, and single-operator accelerated computing on the Ascend CANN platform.

Operator Development

MindStudio provides a complete operator development process, including the unit testing (UT), system testing (ST), and TIK operator debugging. It allows you to develop TBE and AI CPU operators based on mainstream frameworks such as TensorFlow, PyTorch, and MindSpore.

  • UT: MindStudio provides an upgraded UT solution based on the GTest framework, simplifying UT case development.
  • ST: MindStudio provides an upgraded ST framework to automatically generate test cases, verify operator functionality and compute accuracy in real hardware environments, and generate execution test reports.
  • TIK operator debugging: MindStudio supports visualized debugging of TIK operators. You can set breakpoints, perform single-step debugging, continuously run to the end or next breakpoint, view variable information, and exit debugging.

Accuracy Comparison

Model Accuracy Analyzer is a tool designed to compare the accuracy difference of computation results of Huawei proprietary operators and third-party equivalents (benchmark operators) to quickly resolve the operator accuracy issues.

Performance Analysis

The performance analysis tool Profiling collects software and hardware profile data during running of AI applications, analyzes the performance metrics, and displays the result on a GUI, helping users quickly detect and locate performance bottlenecks of AI applications and significantly improving the performance analysis efficiency of AI jobs.

MindStudio Advisor

MindStudio Advisor is a tool used to locate top performance tuning issues of models and operators, identify and analyze bottlenecks, and output tuning suggestions, thereby improving the development efficiency.

Query for Supported Operators and Models

The Supported Operators and Supported Models dialog boxes help users query information about operators supported by the current CANN version and models supported by ModelZoo.