Arduino nano every isn't faster than Arduino Nano

Hellow for my progect I was using Arduino Nano but i needed other RAM so I bought Arduino Nano Every but when I try it I discovered that she is a lo of slower than nano.
Here there is a video for see speed difference
Soory for my english; I'm italian

It'll depend on exactly what you're doing, but yeah - same clock rate, somewhat more complex peripherals - slower.

It "looks" like a ST7735 160x128 display.
You do not say what screen, libraries or sketch you are using.

The EVERY has a better SPI peripheral.
Since we don't know your software, we don't know if the "better" options are being enabled.


Link Display:

I use the standard Arduino TFT.h library. I sue only a function of it (that i made)

void Adafruit_ST7735::fillPixelsScreen(int16_t x, int16_t y, int16_t w, int16_t h,
unsigned char* c,uint16_t Color1, uint16_t Color2) {

if ((x >= _width) || (y >= _height)) return;
if ((x + w - 1) >= _width)  w = _width - x;
if ((y + h - 1) >= _height) h = _height - y;
if (tabcolor == INITR_BLACKTAB) {
Color1 = swapcolor(Color1);
Color2 = swapcolor(Color2);
w /= 2;
h /= 2;
for (y = 0; y < h; ++y) {
unsigned int index = y * w;
setAddrWindow(0, y*2, 160 - 1, y);
* rsport |= rspinmask;
*csport &= ~cspinmask;
//for(byte Rsx = 0; Rsx < 2;++Rsx)
for (x = 0; x < w; ++x) {
if (bitRead(c[index / 8], index % 8)) {
} else {
for (byte i = 0; i < 0; ++i) {
*csport |= cspinmask;
if (hwSPI) SPI.endTransaction();

In my Progect there is a lot malloc and free
I use float vars
I use a joistic
I use a frame Buffer large 640 byte (Green and Black) a quarter of screen resolution
I use a lot of PROGMEM
I use HardwareSPI for the TFT
And I use bool b : 1 for optimize the RAM

For create the image (frame buffer) arduino Every work for 10 milliseconds and for transfer it to the display 150 milliseconds

I have turn the every to 20Mz and the situation is better now. How can I optimize the SPI. Can I turn it to 8Mz ?

How do you currently initialize SPI, or is that buried inside the display code? It looks like 8MHz (or even 10MHz) should be possible...

spisettings = SPISettings(16000000L, MSBFIRST, SPI_MODE0);