The processor and memory are very slow. Compiling the ixgbe network card driver takes 10 minutes. The maximum read speed of DDR4 2133 SODIMM is 742 MB / sec. Custom motherboard with Atom Denverton C3538 processor, quad cores 2.1 GHz. SODIMM module: Crucial DDR4 8Gb 2400MHz CT8G4SFS824A. BIOS: coreboot 4.9 + intel FSP + seabios. WD Blue WDS250G2B0B 250GB, M.2 2280, SATA III Hard Drive. Debian 7 (Linux version 3.2.0-4-amd64 ( debian-kernel@lists.debian.org) (gcc version 4.6.3 (Debian 4.6.3-14) ) #1 SMP Debian 3.2.96-2).
Why the slow operation of the processor and memory is possible? What settings can be changed in Intel FSP and coreboot to speed up the processor and memory?
Full boot log in attached file: putty_com5_coreboot_seabios_debian.zip
Bandwidth64 memory test:
This is bandwidth version 1.5.1. Copyright (C) 2005-2017 by Zack T Smith.
This software is covered by the GNU Public License. It is provided AS-IS, use at your own risk. See the file COPYING for more information.
CPU family: GenuineIntel CPU features: MMX SSE SSE2 SSE3 SSSE3 SSE4.1 SSE4.2 AES XD Intel64
Cache 0: L1 data cache, line size 64, 6-ways, 64 sets, size 24k Cache 1: L1 instruction cache, line size 64, 8-ways, 64 sets, size 32k Cache 2: L2 unified cache, line size 64, 16-ways, 2048 sets, size 2048k
Notation: B = byte, kB = 1024 B, MB = 1048576 B.
CPU speed is 2099.99 MHz.
Sequential read (64-bit), size = 128 B, loops = 30408704, 741.4 MB/s Sequential read (64-bit), size = 256 B, loops = 15204352, 741.2 MB/s Sequential read (64-bit), size = 384 B, loops = 10136196, 741.4 MB/s Sequential read (64-bit), size = 512 B, loops = 7602176, 740.9 MB/s Sequential read (64-bit), size = 640 B, loops = 6186563, 742.6 MB/s Sequential read (64-bit), size = 768 B, loops = 5155479, 742.7 MB/s Sequential read (64-bit), size = 896 B, loops = 4418982, 742.7 MB/s Sequential read (64-bit), size = 1024 B, loops = 3866624, 742.7 MB/s Sequential read (64-bit), size = 1280 B, loops = 3040824, 742.3 MB/s Sequential read (64-bit), size = 2 kB, loops = 1933312, 742.7 MB/s Sequential read (64-bit), size = 3 kB, loops = 1288855, 742.5 MB/s Sequential read (64-bit), size = 4 kB, loops = 966656, 742.6 MB/s Sequential read (64-bit), size = 6 kB, loops = 644398, 742.6 MB/s Sequential read (64-bit), size = 8 kB, loops = 475136, 742.4 MB/s Sequential read (64-bit), size = 12 kB, loops = 316738, 735.7 MB/s Sequential read (64-bit), size = 16 kB, loops = 237568, 736.2 MB/s Sequential read (64-bit), size = 20 kB, loops = 190008, 734.7 MB/s Sequential read (64-bit), size = 24 kB, loops = 152880, 708.7 MB/s Sequential read (64-bit), size = 28 kB, loops = 70200, 374.0 MB/s Sequential read (64-bit), size = 32 kB, loops = 61440, 371.4 MB/s Sequential read (64-bit), size = 34 kB, loops = 57810, 371.2 MB/s Sequential read (64-bit), size = 36 kB, loops = 52780, 371.1 MB/s Sequential read (64-bit), size = 40 kB, loops = 49140, 371.2 MB/s Sequential read (64-bit), size = 48 kB, loops = 40950, 371.3 MB/s Sequential read (64-bit), size = 64 kB, loops = 30720, 371.3 MB/s Sequential read (64-bit), size = 128 kB, loops = 14848, 368.6 MB/s Sequential read (64-bit), size = 192 kB, loops = 9889, 368.9 MB/s Sequential read (64-bit), size = 256 kB, loops = 7424, 368.9 MB/s Sequential read (64-bit), size = 320 kB, loops = 5916, 369.6 MB/s Sequential read (64-bit), size = 384 kB, loops = 4930, 369.6 MB/s Sequential read (64-bit), size = 512 kB, loops = 3712, 369.6 MB/s Sequential read (64-bit), size = 768 kB, loops = 2465, 369.6 MB/s Sequential read (64-bit), size = 1 MB, loops = 1856, 369.6 MB/s Sequential read (64-bit), size = 1.25 MB, loops = 1479, 369.5 MB/s Sequential read (64-bit), size = 1.5 MB, loops = 1260, 369.4 MB/s Sequential read (64-bit), size = 1.75 MB, loops = 1080, 366.9 MB/s Sequential read (64-bit), size = 2 MB, loops = 896, 356.9 MB/s Sequential read (64-bit), size = 2.25 MB, loops = 784, 350.9 MB/s Sequential read (64-bit), size = 2.5 MB, loops = 725, 351.2 MB/s Sequential read (64-bit), size = 2.75 MB, loops = 644, 351.0 MB/s Sequential read (64-bit), size = 3 MB, loops = 588, 351.3 MB/s Sequential read (64-bit), size = 3.25 MB, loops = 551, 351.1 MB/s Sequential read (64-bit), size = 3.5 MB, loops = 504, 351.2 MB/s Sequential read (64-bit), size = 4 MB, loops = 448, 351.3 MB/s Sequential read (64-bit), size = 5 MB, loops = 360, 351.4 MB/s Sequential read (64-bit), size = 6 MB, loops = 300, 351.4 MB/s Sequential read (64-bit), size = 7 MB, loops = 252, 351.5 MB/s Sequential read (64-bit), size = 8 MB, loops = 224, 351.4 MB/s
Random read (64-bit), size = 256 B, loops = 13893632, 678.4 MB/s Random read (64-bit), size = 512 B, loops = 6946816, 677.2 MB/s Random read (64-bit), size = 768 B, loops = 4631193, 677.1 MB/s Random read (64-bit), size = 1024 B, loops = 3473408, 677.2 MB/s Random read (64-bit), size = 1280 B, loops = 2778684, 677.7 MB/s Random read (64-bit), size = 2 kB, loops = 1769472, 678.6 MB/s Random read (64-bit), size = 3 kB, loops = 1179630, 678.6 MB/s Random read (64-bit), size = 4 kB, loops = 868352, 677.1 MB/s Random read (64-bit), size = 6 kB, loops = 578866, 677.5 MB/s Random read (64-bit), size = 8 kB, loops = 442368, 679.0 MB/s Random read (64-bit), size = 12 kB, loops = 289433, 672.9 MB/s Random read (64-bit), size = 16 kB, loops = 217088, 673.4 MB/s Random read (64-bit), size = 20 kB, loops = 173628, 673.1 MB/s Random read (64-bit), size = 24 kB, loops = 128310, 596.1 MB/s Random read (64-bit), size = 28 kB, loops = 79560, 434.8 MB/s Random read (64-bit), size = 32 kB, loops = 69632, 430.8 MB/s Random read (64-bit), size = 34 kB, loops = 65518, 431.5 MB/s Random read (64-bit), size = 36 kB, loops = 61880, 432.0 MB/s Random read (64-bit), size = 40 kB, loops = 55692, 431.7 MB/s Random read (64-bit), size = 48 kB, loops = 46410, 430.6 MB/s Random read (64-bit), size = 64 kB, loops = 34816, 430.5 MB/s Random read (64-bit), size = 128 kB, loops = 16896, 420.3 MB/s Random read (64-bit), size = 192 kB, loops = 11253, 412.6 MB/s Random read (64-bit), size = 256 kB, loops = 8192, 405.5 MB/s Random read (64-bit), size = 320 kB, loops = 6528, 402.1 MB/s Random read (64-bit), size = 384 kB, loops = 5440, 398.5 MB/s Random read (64-bit), size = 512 kB, loops = 3968, 395.5 MB/s Random read (64-bit), size = 768 kB, loops = 2635, 392.6 MB/s Random read (64-bit), size = 1 MB, loops = 1984, 390.9 MB/s Random read (64-bit), size = 1.25 MB, loops = 1581, 389.6 MB/s Random read (64-bit), size = 1.5 MB, loops = 1302, 388.2 MB/s Random read (64-bit), size = 1.75 MB, loops = 1008, 347.2 MB/s Random read (64-bit), size = 2 MB, loops = 768, 297.0 MB/s Random read (64-bit), size = 2.25 MB, loops = 560, 248.7 MB/s Random read (64-bit), size = 2.5 MB, loops = 450, 221.8 MB/s Random read (64-bit), size = 2.75 MB, loops = 391, 207.7 MB/s Random read (64-bit), size = 3 MB, loops = 336, 198.0 MB/s Random read (64-bit), size = 3.25 MB, loops = 304, 192.9 MB/s Random read (64-bit), size = 3.5 MB, loops = 270, 188.8 MB/s Random read (64-bit), size = 4 MB, loops = 240, 183.5 MB/s Random read (64-bit), size = 5 MB, loops = 180, 176.1 MB/s Random read (64-bit), size = 6 MB, loops = 150, 171.7 MB/s Random read (64-bit), size = 7 MB, loops = 126, 168.5 MB/s Random read (64-bit), size = 8 MB, loops = 104, 166.1 MB/s
Hi,
One additional thing happening in your system (not sure if this is related to the slowdown): during the kernel boot there is a delay of about six seconds while kernel is waiting for CPU1: [ 0.487263] Booting Node 0, Processors #1 [ 6.543573] CPU1: Not responding.
See in the /proc/cpuinfo the core 1 is not listed.
This issue is caused by a different processor LAPIC ID of the bootstrap processor... Changing the LAPIC ID in the devicetree.cb file from 0 to 4 will fix this issue, see also: https://mail.coreboot.org/pipermail/coreboot/2018-June/086874.html
But my guess is that this is not changing the system performance at all. Probably the only side effect is the bad cpu enumeration...
Kind regards, Sumo
On Tue, Feb 19, 2019 at 6:56 AM Дмитрий Понаморев dponamorev@gmail.com wrote:
The processor and memory are very slow. Compiling the ixgbe network card driver takes 10 minutes. The maximum read speed of DDR4 2133 SODIMM is 742 MB / sec. Custom motherboard with Atom Denverton C3538 processor, quad cores 2.1 GHz. SODIMM module: Crucial DDR4 8Gb 2400MHz CT8G4SFS824A. BIOS: coreboot 4.9 + intel FSP + seabios. WD Blue WDS250G2B0B 250GB, M.2 2280, SATA III Hard Drive. Debian 7 (Linux version 3.2.0-4-amd64 ( debian-kernel@lists.debian.org) (gcc version 4.6.3 (Debian 4.6.3-14) ) #1 SMP Debian 3.2.96-2).
Why the slow operation of the processor and memory is possible? What settings can be changed in Intel FSP and coreboot to speed up the processor and memory?
Full boot log in attached file: putty_com5_coreboot_seabios_debian.zip
Bandwidth64 memory test:
This is bandwidth version 1.5.1. Copyright (C) 2005-2017 by Zack T Smith.
This software is covered by the GNU Public License. It is provided AS-IS, use at your own risk. See the file COPYING for more information.
CPU family: GenuineIntel CPU features: MMX SSE SSE2 SSE3 SSSE3 SSE4.1 SSE4.2 AES XD Intel64
Cache 0: L1 data cache, line size 64, 6-ways, 64 sets, size 24k Cache 1: L1 instruction cache, line size 64, 8-ways, 64 sets, size 32k Cache 2: L2 unified cache, line size 64, 16-ways, 2048 sets, size 2048k
Notation: B = byte, kB = 1024 B, MB = 1048576 B.
CPU speed is 2099.99 MHz.
Sequential read (64-bit), size = 128 B, loops = 30408704, 741.4 MB/s Sequential read (64-bit), size = 256 B, loops = 15204352, 741.2 MB/s Sequential read (64-bit), size = 384 B, loops = 10136196, 741.4 MB/s Sequential read (64-bit), size = 512 B, loops = 7602176, 740.9 MB/s Sequential read (64-bit), size = 640 B, loops = 6186563, 742.6 MB/s Sequential read (64-bit), size = 768 B, loops = 5155479, 742.7 MB/s Sequential read (64-bit), size = 896 B, loops = 4418982, 742.7 MB/s Sequential read (64-bit), size = 1024 B, loops = 3866624, 742.7 MB/s Sequential read (64-bit), size = 1280 B, loops = 3040824, 742.3 MB/s Sequential read (64-bit), size = 2 kB, loops = 1933312, 742.7 MB/s Sequential read (64-bit), size = 3 kB, loops = 1288855, 742.5 MB/s Sequential read (64-bit), size = 4 kB, loops = 966656, 742.6 MB/s Sequential read (64-bit), size = 6 kB, loops = 644398, 742.6 MB/s Sequential read (64-bit), size = 8 kB, loops = 475136, 742.4 MB/s Sequential read (64-bit), size = 12 kB, loops = 316738, 735.7 MB/s Sequential read (64-bit), size = 16 kB, loops = 237568, 736.2 MB/s Sequential read (64-bit), size = 20 kB, loops = 190008, 734.7 MB/s Sequential read (64-bit), size = 24 kB, loops = 152880, 708.7 MB/s Sequential read (64-bit), size = 28 kB, loops = 70200, 374.0 MB/s Sequential read (64-bit), size = 32 kB, loops = 61440, 371.4 MB/s Sequential read (64-bit), size = 34 kB, loops = 57810, 371.2 MB/s Sequential read (64-bit), size = 36 kB, loops = 52780, 371.1 MB/s Sequential read (64-bit), size = 40 kB, loops = 49140, 371.2 MB/s Sequential read (64-bit), size = 48 kB, loops = 40950, 371.3 MB/s Sequential read (64-bit), size = 64 kB, loops = 30720, 371.3 MB/s Sequential read (64-bit), size = 128 kB, loops = 14848, 368.6 MB/s Sequential read (64-bit), size = 192 kB, loops = 9889, 368.9 MB/s Sequential read (64-bit), size = 256 kB, loops = 7424, 368.9 MB/s Sequential read (64-bit), size = 320 kB, loops = 5916, 369.6 MB/s Sequential read (64-bit), size = 384 kB, loops = 4930, 369.6 MB/s Sequential read (64-bit), size = 512 kB, loops = 3712, 369.6 MB/s Sequential read (64-bit), size = 768 kB, loops = 2465, 369.6 MB/s Sequential read (64-bit), size = 1 MB, loops = 1856, 369.6 MB/s Sequential read (64-bit), size = 1.25 MB, loops = 1479, 369.5 MB/s Sequential read (64-bit), size = 1.5 MB, loops = 1260, 369.4 MB/s Sequential read (64-bit), size = 1.75 MB, loops = 1080, 366.9 MB/s Sequential read (64-bit), size = 2 MB, loops = 896, 356.9 MB/s Sequential read (64-bit), size = 2.25 MB, loops = 784, 350.9 MB/s Sequential read (64-bit), size = 2.5 MB, loops = 725, 351.2 MB/s Sequential read (64-bit), size = 2.75 MB, loops = 644, 351.0 MB/s Sequential read (64-bit), size = 3 MB, loops = 588, 351.3 MB/s Sequential read (64-bit), size = 3.25 MB, loops = 551, 351.1 MB/s Sequential read (64-bit), size = 3.5 MB, loops = 504, 351.2 MB/s Sequential read (64-bit), size = 4 MB, loops = 448, 351.3 MB/s Sequential read (64-bit), size = 5 MB, loops = 360, 351.4 MB/s Sequential read (64-bit), size = 6 MB, loops = 300, 351.4 MB/s Sequential read (64-bit), size = 7 MB, loops = 252, 351.5 MB/s Sequential read (64-bit), size = 8 MB, loops = 224, 351.4 MB/s
Random read (64-bit), size = 256 B, loops = 13893632, 678.4 MB/s Random read (64-bit), size = 512 B, loops = 6946816, 677.2 MB/s Random read (64-bit), size = 768 B, loops = 4631193, 677.1 MB/s Random read (64-bit), size = 1024 B, loops = 3473408, 677.2 MB/s Random read (64-bit), size = 1280 B, loops = 2778684, 677.7 MB/s Random read (64-bit), size = 2 kB, loops = 1769472, 678.6 MB/s Random read (64-bit), size = 3 kB, loops = 1179630, 678.6 MB/s Random read (64-bit), size = 4 kB, loops = 868352, 677.1 MB/s Random read (64-bit), size = 6 kB, loops = 578866, 677.5 MB/s Random read (64-bit), size = 8 kB, loops = 442368, 679.0 MB/s Random read (64-bit), size = 12 kB, loops = 289433, 672.9 MB/s Random read (64-bit), size = 16 kB, loops = 217088, 673.4 MB/s Random read (64-bit), size = 20 kB, loops = 173628, 673.1 MB/s Random read (64-bit), size = 24 kB, loops = 128310, 596.1 MB/s Random read (64-bit), size = 28 kB, loops = 79560, 434.8 MB/s Random read (64-bit), size = 32 kB, loops = 69632, 430.8 MB/s Random read (64-bit), size = 34 kB, loops = 65518, 431.5 MB/s Random read (64-bit), size = 36 kB, loops = 61880, 432.0 MB/s Random read (64-bit), size = 40 kB, loops = 55692, 431.7 MB/s Random read (64-bit), size = 48 kB, loops = 46410, 430.6 MB/s Random read (64-bit), size = 64 kB, loops = 34816, 430.5 MB/s Random read (64-bit), size = 128 kB, loops = 16896, 420.3 MB/s Random read (64-bit), size = 192 kB, loops = 11253, 412.6 MB/s Random read (64-bit), size = 256 kB, loops = 8192, 405.5 MB/s Random read (64-bit), size = 320 kB, loops = 6528, 402.1 MB/s Random read (64-bit), size = 384 kB, loops = 5440, 398.5 MB/s Random read (64-bit), size = 512 kB, loops = 3968, 395.5 MB/s Random read (64-bit), size = 768 kB, loops = 2635, 392.6 MB/s Random read (64-bit), size = 1 MB, loops = 1984, 390.9 MB/s Random read (64-bit), size = 1.25 MB, loops = 1581, 389.6 MB/s Random read (64-bit), size = 1.5 MB, loops = 1302, 388.2 MB/s Random read (64-bit), size = 1.75 MB, loops = 1008, 347.2 MB/s Random read (64-bit), size = 2 MB, loops = 768, 297.0 MB/s Random read (64-bit), size = 2.25 MB, loops = 560, 248.7 MB/s Random read (64-bit), size = 2.5 MB, loops = 450, 221.8 MB/s Random read (64-bit), size = 2.75 MB, loops = 391, 207.7 MB/s Random read (64-bit), size = 3 MB, loops = 336, 198.0 MB/s Random read (64-bit), size = 3.25 MB, loops = 304, 192.9 MB/s Random read (64-bit), size = 3.5 MB, loops = 270, 188.8 MB/s Random read (64-bit), size = 4 MB, loops = 240, 183.5 MB/s Random read (64-bit), size = 5 MB, loops = 180, 176.1 MB/s Random read (64-bit), size = 6 MB, loops = 150, 171.7 MB/s Random read (64-bit), size = 7 MB, loops = 126, 168.5 MB/s Random read (64-bit), size = 8 MB, loops = 104, 166.1 MB/s
coreboot mailing list -- coreboot@coreboot.org To unsubscribe send an email to coreboot-leave@coreboot.org
The reason for the poor performance was not working SVID bus. Understand exactly what settings affect the enabling/disabling SVID bus failed to find out. The problem was solved by choosing another platform in spsFITs (Aspen Cove instead of Harcuvar). After that, the SVID bus started to work, we saw the clock signals (25 MHz), saw the exchange of data between the processor and the PMICs. Performance came in the expected frame :). If someone knows which settings, Straps, gpio and so on affect the enabling/disabling SVID bus - please write here.