주요 콘텐츠

이 페이지는 기계 번역을 사용하여 번역되었습니다. 영어 원문을 보려면 여기를 클릭하십시오.

모델 구성 파라미터: 코드 생성 최적화

코드 생성 > 최적화 카테고리에는 모델의 시뮬레이션 속도를 높이고 생성된 코드의 성능을 향상시키는 데 필요한 파라미터들이 포함되어 있습니다. 코드 생성을 개선하기 위한 모델 파라미터에는 Simulink® Coder™ 또는 Embedded Coder®가 필요합니다.

파라미터설명

디폴트 파라미터 동작

생성된 코드에서 숫자형 블록 파라미터를 상수 인라인 값으로 변환합니다.

타깃 하드웨어 확장 명령어 집합 활용타깃 하드웨어용 SIMD(단일 명령 복수 데이터) 코드를 생성할 명령어 집합을 선택합니다.
Optimize reductions축소 연산 루프에 대한 SIMD(단일 명령 복수 데이터) 코드를 생성합니다.

재사용 가능한 서브시스템 출력을 다음과 같이 전달합니다. (Embedded Coder)

재사용 가능한 서브시스템이 출력을 전달하는 방식을 지정합니다.

Remove root level I/O zero initialization (Embedded Coder)

0으로 설정된 최상위 레벨의 인포트 및 아웃포트에 대한 초기화 코드를 생성할지 여부를 지정합니다.

Remove internal data zero initialization (Embedded Coder)

블록 상태 및 블록 출력과 같은 내부 작업 구조에 대해 초기화 코드를 0으로 생성할지 여부를 지정합니다.

Level (Embedded Coder)

생성된 코드에 적용할 최적화 수준을 선택합니다.

Priority (Embedded Coder)

생성된 코드를 최적화하여 실행 효율을 높이거나, RAM 사용량을 줄이거나, 또는 이 둘의 균형을 맞춥니다.

사용자 지정 최적화 지정 (Embedded Coder)

최적화 수준을 적용하는 대신, 이 파라미터를 선택하여 세부 정보 섹션의 최적화 파라미터를 선택합니다.

Use memcpy for vector assignment

벡터 할당을 위해 생성된 코드를 for 루프를 memcpy로 대체하여 최적화합니다.

Memcpy 임계값(단위: 바이트)

생성된 코드에서 벡터 할당 시 for 루프를 memcpymemset 함수 호출로 대체해야 하는 배열의 최소 크기(바이트 단위)를 지정합니다.

로컬 블록 출력 활성화

블록 신호를 로컬로 선언할지, 전역으로 선언할지 지정합니다.

로컬 블록 아웃포트 재사용

Simulink Coder 소프트웨어가 신호 메모리를 재사용하는지 여부를 지정합니다.

불필요한 지역 변수 제거 (표현식 폴딩)

블록 연산을 단일 표현식으로 축소합니다.

Reuse global block outputs (Embedded Coder)

블록 출력에 전역 메모리를 재사용합니다.

Reuse output buffers of Model blocks (Embedded Coder)

가능하면 참조된 모델 버퍼를 재사용합니다.
Unify buffer reuse candidates (Embedded Coder)모델 수준에서 버퍼 재사용 후보를 분석하여, 생성된 코드에서 최적의 재사용이 구현되도록 합니다.

Assignment 및 Bus Assignment 블록에 대해 인 플레이스(in-place) 업데이트 수행 (Embedded Coder)

가능하다면 Bus Assignment 및 Assignment 블록의 입력 및 출력 변수를 재사용합니다.

Reuse buffers for Data Store Read and Data Store Write blocks (Embedded Coder)

Data Store Read 및 Data Store Write 블록에 대한 임시 버퍼를 제거합니다. 가능하다면 Data Store Memory 블록을 직접 사용합니다.

Simplify array indexing (Embedded Coder)

루프에서 배열에 접근할 때 배열 인덱스에 포함된 곱셈 연산을 대체합니다.

부울 데이터를 비트 필드로 패킹 (Embedded Coder)

부울 신호를 1비트 비트필드로 저장할지, 아니면 부울 데이터형으로 저장할지 지정합니다.

비트필드 선언자 유형 지정자 (Embedded Coder)

구성 파라미터 부울 데이터를 비트 필드로 패킹 (Embedded Coder)를 선택할 때 비트필드 유형을 지정합니다.

다른 크기와 차원의 버퍼 재사용 (Embedded Coder)

크기와 차원이 서로 다른 데이터를 저장하기 위해 버퍼를 재사용함으로써 메모리 사용량을 줄입니다.

전역 데이터 액세스 최적화 (Embedded Coder)

전역 변수 최적화를 선택합니다.

Optimize block operation order in generated code (Embedded Coder)

생성된 코드 내의 블록 연산 순서를 재조정하여 코드 실행 속도를 향상시킵니다.

Use bitsets for storing state configuration

bitset를 사용하여 상태 구성 변수를 저장하는 데 필요한 메모리 양을 줄입니다.

부울 데이터를 저장할 때는 bitset를 사용하세요

bitset를 사용하여 부울 데이터를 저장하는 데 필요한 메모리 양을 줄입니다.

최대 스택 크기 (바이트)

모델의 최대 스택 크기를 바이트 단위로 지정합니다.

Loop unrolling threshold

for 루프가 생성되는 최소 신호 또는 파라미터 폭을 지정합니다.

Optimize using the specified minimum and maximum values (Embedded Coder)

모델 내 신호 및 파라미터에 대해 지정된 최소값과 최대값을 사용하여 생성된 코드를 최적화합니다.

서브시스템 출력에 대한 인수의 최대 개수

개별적으로 전달할 서브시스템 출력의 최대 개수를 설정합니다.

불변 신호 인라인 처리

불변 신호의 기호 이름을 상수 값으로 변환합니다.

Remove code from floating-point to integer conversions with saturation that maps NaN to zero

NaN 값에 대한 부동소수점-정수 변환 결과를 처리하는 코드를 제거합니다.

memset을 사용하여 부동소수점 및 double형을 0.0으로 초기화

부동소수점 데이터를 0.0으로 명시적으로 초기화하는 코드를 생성할지 여부를 지정합니다.

Remove code from floating-point to integer conversions that wraps out-of-range values

범위를 벗어난 부동소수점 수를 정수로 변환할 때 발생하는 결과를 처리하는 래핑 코드를 제거합니다.

Remove Code from Tunable Parameter Expressions That Saturate Out-of-Range Values (Embedded Coder)

조정 가능한 파라미터의 래핑 코드를 제거합니다.

Remove code that protects against integer division arithmetic exceptions (Embedded Coder)

정수 및 고정소수점 데이터에 대해 0으로 나누는 경우를 방지하는 코드와 INT_MIN/-1 연산을 생성할지 여부를 지정합니다.

재사용 가능한 서브시스템을 위한 버퍼재사용 가능한 서브시스템 경계에 버퍼를 삽입하여 재사용성을 높입니다.

호환되지 않는 최적화 비활성화

Simulink Code Inspector와 호환되지 않는 최적화를 비활성화할지 여부를 지정합니다.

자동으로 생성되는 열거형의 기본 스토리지 유형활성 상태 출력을 사용하여 생성된 열거형의 저장 유형과 크기를 설정합니다.
Use signal labels to guide buffer reuse (Embedded Coder)레이블이 동일한 신호의 경우, 코드 생성기가 동일한 신호 메모리를 사용하려고 시도합니다.
병렬 for 루프 생성 (Embedded Coder)코드 생성 시 생성된 코드의 for 루프를 Matlab Function, Matlab System 또는 For Each 블록에서 병렬로 구현할지 여부를 지정합니다.
for 루프 자동 스케줄링 (Embedded Coder)코드 생성 시 생성된 코드 내의 중첩된 for-루프가 Neighborhood Processing 블록으로 자동 스케줄링될지 여부를 지정합니다.
Use C restrict qualifier (Embedded Coder)함수 인수에 C의 restrict 키워드를 적용할지 여부를 지정합니다.
신호 저장 재사용블록 입력 신호와 출력 신호를 저장하기 위해 할당된 메모리 버퍼의 재사용을 지정함으로써, 실시간 프로그램의 메모리 요구량을 줄입니다.
Operator to represent Bitwise and Logical Operator blocks (Embedded Coder)생성된 코드에 비트 연산자, 논리 연산자, 또는 둘 다 포함될지 여부를 지정합니다.
Generate Halide code (Embedded Coder)배열 연산 속도를 높이기 위해 Halide 코드를 생성합니다.
사용자 함수 간의 함수 인라인 처리사용자가 작성한 함수에서 다른 사용자가 작성한 함수로의 호출에 대한 인라인 처리를 제어합니다.
MathWorks® 함수 간의 함수 인라인 처리MathWorks 함수에서 다른 MathWorks 함수로의 호출에 대한 인라인 처리를 제어합니다.
사용자 함수와 MathWorks 함수 간의 함수 인라인 처리사용자가 작성한 함수에서 MathWorks 함수로, 그리고 MathWorks 함수에서 사용자가 작성한 함수로의 호출에 대한 인라인 처리를 제어합니다.

참고 항목

도움말 항목