Re: Example M4 MAX and 7950X3D timing for building lang/rust in my context
Søren Schmidt <[email protected]>
| Newsgroups | gmane.os.freebsd.devel.arm |
|---|---|
| Message-ID | <[email protected]> |
Hi, Just thought I’d see what my lovely little MacMini M4pro/48G/512G could do… Blank machine stable-14/60Gdisk/10CPUs/16Gmem using UTM as virtualization. Note: Only 10 out of 12 cores, disk is on TB4 connected NVMe disk mounted on macOS and seen as virtio block device. Grabbed ports tree, and watched it download and compile 50+ (yes fifty) other packages before getting to rust. Kernel needs COMPAT_FREEBSD11 ?? Why on earth ?? Make clean in /usr/ports/lang/rust… Time make … Wait for it to complete 987.07 real 8115.10 user 307.51 sys That would be 16:27:07 … (Using 12 cores wins about 30secs, experience shows that leaving 1-2 (efficiency) cores for macOS / UTM is the seed spot) It shouldn’t be faster that your M4max … Either your disk I/O is heavily hampered or Parallels is just performing badly. Form what I’l tried on VMware, VirtualBox and UTM, UTM is by far the best performing virtualization om Apple silicon. PS: just got reminded why I don’t use ports, you still get the pony, its entire family and a kitchen sink for no good reason :) Søren Schmidt [email protected] / [email protected] "So much code to hack, so little time" > On 16 Mar 2025, at 06.47, Mark Millard <[email protected]> wrote: > > Overall result: > > About the same build time for M4 MAX and the 7950X3D, > each targeting its own kind of context rather than the > same kind of context. This is despite the difference in > the number of FreeBSD "cpus" involved. M4 MAX then > 7950X3D: > > [00:22:12] [02] [00:22:07] Finished lang/rust | rust-1.85.0_1: Success > [00:21:48] [21] [00:21:43] Finished lang/rust | rust-1.85.0_1: Success > > > More detail needed to well interpret the above. . . > > > My normal aarch64 environment is unusual, in that the > configuration that I normally use targets cortex-a76 > explicitly in the kernel that I normally boot, the > aarch64 poudriere jail worlds, and the ports being > built. That contributes to the below comparison. I've > not done such tailoring to the 7950X3D type of amd64 > context. So a possibly "unfair" context variation in > that respect. (Not that cortex-a76 targeting always > makes things take less time: it does not.) > > (I'll note that cortex-a76 targeting leads to > compatibility with each of: M4 MAX, Windows DevKit > 2023, and RPi5B. The same boot media, using the same > kernel and such, works on all 3.) > > > A 14 virtual core FreeBSD in Parallels in a macOS > context with a M4 MAX (so: 14 FreeBSD aarch64 "cpus" > --of 16 cores in the M4 MAX): > > [00:22:12] [02] [00:22:07] Finished lang/rust | rust-1.85.0_1: Success > > Maximum observed for each of the 3 load averages: 14.92, 11.28, 7.03 > (My personal adjustment to top tracks that.) No active use of swap space. > > NOTE: Parallels is using USB 3.2 Gen 2 to a U2 adapter that > has an Optane attached that has the FreeBSD. The same > hardware is used to boot and to operate the Microsoft > DevKit 2023 and the RPi5B. The macOS file system/media > does not have any of the FreeBSD materials in it. > > > A 7950X3D (16 SMT cores, so 32 FreeBSD amd64 "cpus"): > > [00:21:48] [21] [00:21:43] Finished lang/rust | rust-1.85.0_1: Success > > Maximum observed for each of the 3 load averages: 32.81, 25.21, 15.31 > (My personal adjustment to top tracks that.) No active use of swap space. > > NOTE: PCIe Optane media. > > > Overall notes: > > Note: The prerequisite packages had been built previously. > No other builds or such competed significantly for > resources. rust was listed in TMPFS_BLACKLIST . > > Note: Same system source version and ports source version > are what things are based on. > > Note: macOS did not compress any memory. I had configured > Parallels to provide 64 GiBytes of RAM to FreeBSD, > of the 128 GiBytes in the M4 MAX in use. macOS seems > to start compression when RAM use gets to something > like 100 GiBytes overall for the macOS context. > macOS got up to something like 89 GiBytes of RAM in > use. (I've software that monitors such under macOS.) > > > Side notes: > > The cortex-a76 code based Microsoft DevKit 2023 context > builds lang/rust in a few minutes over 2hrs. > > Avoiding having FreeBSD push the use of its paging hard > seems to be important to avoiding OOM kills in an under- > Parallels usage context. (This is via other, earlier > experiments.) > > === > Mark Millard > marklmi at yahoo.com > >