Altia 개발자 블로그 시리즈에 오신 것을 환영합니다! 이 게시물은 UI 편집기인 Altia Design과 자동 그래픽 코드 생성기인 Altia DeepScreen을 사용하여 임베디드 사용자 인터페이스를 개발 및 배포하기 위한 디자인 아이디어와 스마트 솔루션을 제시하기 위해 자체 GUI 전문가가 작성했습니다.

해야 가입하기 뉴스레터를 통해 이 콘텐츠를 귀하에게 직접 전달할 수 있습니다!


miniGL 대상의 RAM 사용량 줄이기

Altia miniGL은 알티아 딥스크린 OpenVG 및 소프트웨어 렌더링과 함께 사용되어 기능이 덜하고 리소스가 제한된 대상 또는 환경을 위한 디자인을 생성하는 아키텍처 구현입니다.

Altia miniGL 코드는 이미 RAM 소비 측면에서 매우 최적화되어 있지만 여전히 RAM을 줄이는 방법을 찾고 있다면 검토할 가치가 있는 몇 가지 제안 사항이 있습니다.

불필요한 물건 피하기

Altia miniGL은 데이터를 매우 효율적으로 압축하지만 이 최적화의 효율성을 더욱 향상시킬 수 있는 몇 가지 디자인 선택 사항이 있습니다. 그만큼 내장 애니메이션이미지 개체는 파일 시스템을 사용합니다. 코드 생성 화면의 옵션은 사용되는 RAM의 양을 증가시킵니다. 이러한 옵션은 DeepScreen 코드가 더 많은 가변성을 허용하도록 하여 데이터 범위를 알 수 없기 때문에 최적화를 줄입니다. 사용할 때도 동일한 효과가 발생합니다. 스냅샷 개체. 필요하지 않은 경우 이러한 개체 또는 코드 생성 옵션을 사용하지 마십시오.

일반적으로 RAM 축소의 다음 후보는 다음과 같습니다. 텍스트 I/O 객체. 필요한 최소 RAM 양만 소비하도록 모든 개체의 해당 길이를 확인하여 트리밍할 수 있습니다. 코드 생성 설정 최대 텍스트 문자열 길이(정적 메모리)를 가능한 가장 긴 텍스트 I/O의 문자 길이로 조정할 수 있습니다. 또한 내부 데이터 배열의 공간도 절약할 수 있습니다. 이러한 배열의 텍스트 I/O 중 하나라도 언어 개체 또는 논리에서 처리되지 않는 경우 정적 레이블로 변경할 수 있습니다. 정적 레이블은 RAM 대신 ROM에 저장됩니다.

같은 이미지, 같은 이름

디자인에 동일한 이미지 소스 파일에 대한 여러 참조가 포함되어 있는 경우 이 이미지가 사용되는 모든 애니메이션이 동일한 이름을 공유하는지 확인하십시오. 이미지 개체를 복사하여 붙여넣으면 이름이 자동으로 증가합니다. 아래에서 이에 대한 예를 볼 수 있습니다.

이것은 애니메이션 변수 이름에 _global을 추가하여 방지할 수 있으며 아래에서도 설명합니다.

이제 이러한 모든 다른 개체는 RAM에서 동일한 이미지 인스턴스를 로드하고 참조합니다. 이를 통해 단색 배경 이미지를 디스플레이 너비에 대해 복사된 픽셀의 단일 열로 줄이는 것과 같은 포함된 마법사를 사용할 수 있습니다. 이것은 전체 이미지를 로드하는 대신 최소량의 RAM을 사용합니다. 이 작업은 코드 생성에서 이미지 개체가 파일 시스템 사용 옵션을 선택 취소하는 것과 함께 수행되어야 합니다. 이제 많은 이미지 애니메이션이 생성된 바이너리 파일에서 이름을 공유하지만 동일한 이미지 데이터가 참조됩니다.

테스트하는 것이 가장 좋습니다

마지막으로 이 게시물에서 언급한 모든 방법의 결과를 테스트하고 비교하는 것을 잊지 마십시오. RAM 사용량을 추정하는 것은 시스템에 따라 매우 다르며 귀하의 질문에 대한 가장 신뢰할 수 있는 대답은 장치 및 디자인을 위한 코드를 생성하고 컴파일하는 것입니다. 비슷한 모양의 디자인은 디자인 구현으로 인해 RAM 사용량이 크게 다를 수 있습니다. 더욱이, 동일한 디자인이 다른 하드웨어에서 근본적으로 다른 메모리 사용량을 가질 수 있습니다. 예를 들어, 일부 장치는 Flash에서 직접 이미지 데이터를 참조하여 프레임 버퍼에 넣을 수 있습니다. 그러나 다른 장치에는 이미지를 렌더링하기 위해 RAM 복사본이 필요할 수 있습니다.

임베디드 플랫폼에는 너무 많은 변수가 작용하기 때문에 프로젝트의 총 RAM 사용량 추정치가 정확하지 않을 수 있다는 점을 기억하십시오. 디자인을 실행하는 것보다 시스템의 RAM 사용량을 찾는 더 좋은 방법은 없습니다. 당신의 하드웨어 – Altia를 사용하면 바로 이러한 작업을 쉽게 수행할 수 있습니다.

Altia 코드 생성에 대해 더 알고 싶으십니까? 라이브 데모 요청 오늘 우리와 함께!