1. A method comprising: receiving a request to initialize a system memory including a plurality of memory banks; and during the initialization of the system memory: executing, using a plurality of memory address mapping schemes for memory settings for the system memory, a system characterization workload including a plurality of transactions directed towards the system memory, by monitoring target addresses of the plurality of transactions directed towards the system memory; determining, for each memory address mapping scheme: a number of accesses for each memory bank, and which bank of the plurality of banks has a highest number of memory accesses; selecting one of the plurality of memory address mapping schemes for memory settings for the system memory based, at least in part, on: the target addresses of the plurality of transactions, and a determination of which memory address mapping scheme results in a lowest number of memory accesses among the banks determined to have the highest number of memory accesses.