Nios® V/II Embedded Design Suite (EDS)
Support for Embedded Development Tools, Processors (SoCs and Nios® V/II processor), Embedded Development Suites (EDSs), Boot and Configuration, Operating Systems, C and C++
12745 Discusiones

increasing performance of nios 2

Altera_Forum
Colaborador Distinguido II
1.427 Vistas

Hallo, 

 

Is there any possibility to increase the performance of nios II in C4 related to the debug configuration? 

I know this from some µCs the there is a big increase by disabling the debug feature. 

 

Is there any “switch” for nios II which results the same? 

 

Thanks 

sim
0 kudos
5 Respuestas
Altera_Forum
Colaborador Distinguido II
716 Vistas

The JTAG debug doesn't affect the execution time of normal code. 

For best performance: 

- Make sure you compile everything (including the BSP/C library) with -O2 or -O3. 

- Don't use floating point. 

- Don't use printf. 

- Try to use as little of the C libarary as possible. 

- Fit all your code and data into tightly coupled memory. 

- Don't use Altera's alt_main() code unless you really need the stdio setup and teardown (forces malloc() and friends into your image). 

- Use the 'small data' segment (%gp relative addressing) for as much data as possible. 

- Write C very carefully to give the compiler the best chance of optimising the code.
Altera_Forum
Colaborador Distinguido II
716 Vistas

Hallo, 

 

thanks for your answer. 

Could you explain your first point in more detail? 

Where is it to finde and what is the meaning?
Altera_Forum
Colaborador Distinguido II
716 Vistas

I have also seen the option 

 

APP_CFLAGS_OPTIMIZATION := -Os 

 

in templates. But I could not find -Os in any document. What is that? 

 

Greets 

sim
Altera_Forum
Colaborador Distinguido II
716 Vistas

-Os is optimize for space. It will create a smaller binary, but maybe not the fastest one. If you are looking for performance it is better to use -O2 or -O3

Altera_Forum
Colaborador Distinguido II
716 Vistas

Ok, thanks. 

Now I removed the '-g' option in BSP editor. Then I build all again. But the code size did not decrease. How could that be?
Responder