I would like to get a report of my environment package versions and hardware resources like Scooby does in Python (image below), but for Julia, is there a package or a way to do that?
Well, nothing that would generate precisely such a table (you’d have to implement this yourself) but the info can be queried. For example:
julia> Sys.ARCH
:x86_64
julia> Sys.MACHINE
"x86_64-apple-darwin22.4.0"
julia> Sys.isapple()
true
julia> Sys.total_memory() |> Base.format_bytes
"16.000 GiB"
julia> Sys.CPU_THREADS
12
julia> Sys.cpu_summary()
Intel(R) Core(TM) i7-9750H CPU @ 2.60GHz:
speed user nice sys idle irq
#1-12 2600 MHz 1877003 s 0 s 801025 s 25060994 s 0 s
If you want more information about the CPU, you can try:
julia> using CpuId
julia> cpuinfo()
Cpu Property Value
–––––––––––––––––– ––––––––––––––––––––––––––––––––––––––––––––––––––––––––––
Brand Intel(R) Core(TM) i7-9750H CPU @ 2.60GHz
Vendor :Intel
Architecture :Kabylake
Model Family: 0x06, Model: 0x9e, Stepping: 0x0a, Type: 0x00
Cores 6 physical cores, 12 logical cores (on executing CPU)
Hyperthreading hardware capability detected
Clock Frequencies 2600 / 4500 MHz (base/max), 100 MHz bus
Data Cache Level 1:3 : (32, 256, 12288) kbytes
64 byte cache line size
Address Size 48 bits virtual, 39 bits physical
SIMD 256 bit = 32 byte max. SIMD vector size
Time Stamp Counter TSC is accessible via `rdtsc`
TSC runs at constant rate (invariant from clock frequency)
Perf. Monitoring Performance Monitoring Counters (PMC) revision 4
Available hardware counters per logical core:
3 fixed-function counters of 48 bit width
4 general-purpose counters of 48 bit width
Hypervisor No
And for the environment package versions:
julia> using Pkg
julia> Pkg.status()
Status `/private/var/folders/1d/sbf5s24x6y306tgv_4hh06y00000gn/T/tmp.BFVQ4Oai/Project.toml`
[6e4b80f9] BenchmarkTools v1.3.2
[295af30f] Revise v3.5.3
[811555cd] ThreadPinning v0.7.8
2 Likes