Hacker News new | past | comments | ask | show | jobs | submit login

Faking NUMA can help enforcing access patterns that make things faster:

> In the worst case, two sdram clients accessing different pages of the same bank, may cause repeated closing and opening of the pages, harming the usable bandwidth you can achieve. Which pages belong to a bank depends on the physical address lines of the buffers used. We have found that it is pretty common for buffers to be allocated in pathologically bad ways.

> NUMA allows us to have more control over this. We can split our sdram, into, say, 8 NUMA regions, and configure the kernel to interleave the allocations between the regions. In addition the sdram controller allows the address bits used for segmenting the banks to be reconfigured (which we've exposed through eeprom config SDRAM_BANKLOW).

https://forums.raspberrypi.com/viewtopic.php?t=378276




If it works on a Pi, wouldn't this make sense to also implement with DDR5? Or is it already there? Now that the chips are split into 2x mux of 4x32bit busses with dual rank on dual channel, it would really suck if the data was defragmented in such a way that only one 32 bit bus could access it and only half the time (if my understanding of this is right anyway).


Exactly what I was thinking too.




Consider applying for YC's Spring batch! Applications are open till Feb 11.

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: