2. Extended Applications

This chapter provides information about extended applications that can take advantage of the improved hardware of SNAKE.

An application that runs on CTR-equivalent hardware even on SNAKE is referred to as a standard application.

CTR game software applications that have already been released to the market are considered standard applications.

2.1. Enhanced Features in Extended Applications (Important)

When an extended application is run on SNAKE, the CPU performance and amount of main memory available is increased as follows.

Table 2-1. Enhanced Features in Extended Applications
Feature Standard Application Extended Application
CPU Clock 268 MHz 804 MHz
L2 Cache None 2 MB
Main Memory 64 MB 124 MB

Due to the large size of the CPU L2 cache that is enabled in extended applications, the nngxUpdateBuffer function and other functions that are called when using the results of CPU memory operations in other components (such as the GPU) can have an effect on performance.

For more information, see Section 3.4.10. Differences Between nngxUpdateBuffer and nngxUpdateBufferLight (Important).

2.2. Running Extended Applications on CTR

Any application built as an extended application can be run on CTR without any changes.

However, applications only run with the same hardware performance as a standard application.

2.3. Checking the Operating Environment (Important)

Functions are provided to determine the environment that an application is running in so that the application can be adjusted based on the operating environment.

Table 2-2. Functions for Determining the Operating Environment in an Application
Function Description
nn::os::IsRunOnSnake Returns whether the application is running on SNAKE hardware.
nn::os::IsRunningAsExtApplication Returns whether the application is running as an extended application.

Nintendo recommends calling these functions when the application starts and caching the return value. The nn::os::IsRunningAsExtApplication function in particular can have a negative effect on performance when called frequently.

2.4. Standard Applications With Reduced Performance Only on SNAKE

Due to differences in scheduling and the configuration of threads running on the system core, some standard applications might experience performance problems only when running on SNAKE hardware.

In such cases, the performance problems can typically be resolved by building the application as an extended application.


CONFIDENTIAL