이 페이지는 기계 번역을 사용하여 번역되었습니다. 최신 내용을 영문으로 보려면 여기를 클릭하십시오.
메모리 사용량
생성 코드로 RAM, ROM, 스택 공간 사용을 최적화
코드 생성기가 변수를 지역 변수로 정의하는지 아니면 전역 변수로 정의하는지와 데이터가 서브시스템 함수로 어떻게 전달되는지를 지정하여 메모리 사용량을 제어합니다. 구성 설정을 수정하여 데이터 저장에 사용되는 메모리의 양을 줄입니다.
코드 생성기는 제어 흐름 구조를 결합하고, 쓸모없는 코드 경로와 계산 결과에 영향을 미치지 않는 블록에 대한 코드를 제거하여 ROM 사용량을 줄입니다. 초기화 코드, 재설정 및 비활성화 함수, 방어 코드 등 필요 없는 코드를 제거하면 ROM 사용량을 더욱 줄일 수 있습니다.
도움말 항목
변수를 로컬 또는 글로벌로 정의
- Customize Stack Space Allocation
Control the maximum allowable stack size to provide some control over whether data is defined locally or globally in the generated code. - Reduce Memory Usage for Signals
Enable parameters that provide the capability to reuse memory allocated for signals. - Enable and Reuse Local Block Outputs in Generated Code
Where possible, the code generator declares block outputs as local variables, so that it can potentially reuse these variables. - Reuse Global Block Outputs in the Generated Code
The code generator attempts to reuse global variables. - Optimize Global Variable Usage
Choose a global variable reference optimization to satisfy your memory usage and execution speed requirements. - Optimize Generated Code by Passing Reusable Subsystem Outputs as Individual Arguments
The code generator eliminates data copies from local variables back to global block I/O structures by passing reusable subsystem outputs as individual arguments instead of as a pointer to a structure stored in global memory. - Reduce Global Variables in Nonreusable Subsystem Functions
To reduce global RAM for a nonreusable subsystem, generate a function interface that passes data through arguments instead of global variables. - Reduce Memory Usage for Models Containing Referenced Models
Reduce RAM usage for a referenced model by generating optimized code that reuses buffers or generates reusable temporary buffers to hold referenced model outputs.
코드 크기 줄이기
- Remove Zero-Initialization Code
Control whether to initialize internal data (blocks states and block outputs) and external data (root inports and outports whose value is zero) in the generated code. - Remove Reset and Disable Functions from the Generated Code
Remove unreachable (dead-code) instances of the reset and disable functions from the generated code for ERT-based systems that include model referencing hierarchies. - Inline Invariant Signals
Use the numerical values of invariant signals instead of their symbolic names in the generated code. - Inline Numeric Values of Block Parameters
Reduce global RAM usage by inlining the literal numeric values of block parameters. - Optimize Generated Code by Consolidating Redundant If-Else Statements
The code generator optimizes the generated code by combiningif-else
statements that share the same condition. - Eliminate Dead Code Paths in Generated Code
The code generator eliminates dead (that is, unused) code paths from the generated code. - Optimize Generated Code by Combining Multiple for Constructs
The code generator uses data dependency analysis to combinefor
constructs to reduce static code size and runtime branching. - Control Generation of Initialization Code for Local Variables Set to Zero
By default, the code generator does not explicitly initialize local variables to zero.
데이터 저장을 위한 메모리 줄이기
- Reuse Buffers of Different Sizes and Dimensions
Reuse buffers for matrices that have different sizes and shapes. - Reduce Memory Usage for Boolean and State Configuration Variables
Reduce the amount of memory that stores state configuration variables andBoolean
variables. - Optimize Memory Usage for Time Counters
Optimize memory that the code generator allocates for an elapsed time counter. - Optimize Generated Code Using Boolean Data for Logical Signals
The code generator optimizes the generated code by storing logical signals asBoolean
data types. - Optimize Generated Code by Packing Boolean Data into Bitfields
The code generator reduces RAM consumption by packing boolean data into 1-bit bitfields. - Vector Operation Optimization
The code generator reduces stack memory by replacing temporary local arrays with local variables. - Specify Single-Precision Data Type for Embedded Application
Generate code whose floating-point data types are only single precision, for example, for targeting a single-precision processor. - Generate Efficient Code by Specifying Data Types for Block Parameters
To generate more efficient code, match parameter data types with signal data types or store parameters in smaller data types. - Control Operator Type in Generated Code
Generate code with Logical or Bitwise Operators or a combination of both operators. - Generate Efficient Code Using Unified Analysis
Reduce RAM usage and data copies performing unified analysis at model-level.