Skip to content

Add additional Neuron drivers#388

Merged
yeazelm merged 1 commit intobottlerocket-os:developfrom
yeazelm:more_neuron
Mar 13, 2026
Merged

Add additional Neuron drivers#388
yeazelm merged 1 commit intobottlerocket-os:developfrom
yeazelm:more_neuron

Conversation

@yeazelm
Copy link
Contributor

@yeazelm yeazelm commented Mar 13, 2026

Description of changes:
There are situations where manually overriding the Neuron driver chosen by the PCI detection may be warranted. This provides those drivers for those times. All automatic behavior is intact, these are just present on the filesystem for those use cases.

Testing done:
Built an aws-ecs-3 with these drivers and manually loaded the driver to show it working.

Details
bash-5.2# driverdog link-modules
20:16:02 [INFO] Copied neuron.ko
20:16:02 [INFO] Copied neuron.ko
bash-5.2# ls -al /lib/modules/6.12.73/kernel/drivers/neuron/neuron.ko
-rw-r--r--. 1 root root 868777 Mar 12 20:16 /lib/modules/6.12.73/kernel/drivers/neuron/neuron.ko
bash-5.2# find . -name "neuron.ko"
./var/lib/kernel-modules/.overlay/upper/6.12.73/kernel/drivers/neuron/neuron.ko
./x86_64-bottlerocket-linux-gnu/sys-root/usr/lib/modules/6.12.73/kernel/drivers/neuron/neuron.ko
./x86_64-bottlerocket-linux-gnu/sys-root/usr/libexec/neuron/neuron_2_21/neuron.ko
./x86_64-bottlerocket-linux-gnu/sys-root/usr/libexec/neuron/neuron_7372/neuron.ko
./x86_64-bottlerocket-linux-gnu/sys-root/usr/libexec/neuron/neuron_7693/neuron.ko
./x86_64-bottlerocket-linux-gnu/sys-root/usr/libexec/neuron/neuron_8072/neuron.ko
./x86_64-bottlerocket-linux-gnu/sys-root/usr/libexec/neuron/neuron_latest/neuron.ko
bash-5.2# rm /lib/modules/6.12.73/kernel/drivers/neuron/neuron.ko
bash-5.2# cp ./x86_64-bottlerocket-linux-gnu/sys-root/usr/libexec/neuron/neuron_8072/neuron.ko /lib/modules/6.12.73/kernel/drivers/neuron/neuron.ko
bash-5.2# modprobe neuron
bash-5.2# modinfo neuron
filename:       /lib/modules/6.12.73/kernel/drivers/neuron/neuron.ko
alias:          pci:v00001d0fd00007064sv*sd*bc*sc*i*
version:        2.x.8072.0
license:        GPL
description:    Neuron Driver, built from SHA: 381f0e424131a6a8ab4599de7edd7170ee3388c1
import_ns:      DMA_BUF
srcversion:     55CAB5764D30359F7D21735
depends:
name:           neuron
retpoline:      Y
vermagic:       6.12.73 SMP preempt mod_unload modversions
sig_id:         PKCS#7
signer:
sig_key:
sig_hashalgo:   unknown
signature:
parm:           userver_pds_node_cnt:pds ultraserver node count (int)
parm:           userver_pds_server_id:pds ultraserver id (int)
parm:           userver_ctl:ultraserver election control (int)
parm:           userver_etimeout:ultraserver election timeout (int)
parm:           force_userver:Force Neuron UltraServer (int)
parm:           force_die_flip:Force Neuron Core Mapping APIs to give back DIE flip mappings (int)
parm:           nmetric_metric_post_delay:Minimum time to wait (in milliseconds) before posting metrics again (uint)
parm:           nmetric_log_posts:1: send metrics to CW, 2: send metrics to trace, 3: send metrics to both (uint)
parm:           no_reset:Dont reset device (int)
parm:           nc_per_dev_param:Number of neuron cores (int)
parm:           dev_nc_map:Map of active neuron cores (int)
parm:           dma_teardown_on_exit:Reset the DMA state on user process exit (int)
parm:           zerocopy_trn1_override:override zerocopy for trn1 (int)
parm:           mempool_min_alloc_size:Minimum size for memory allocation (int)
parm:           mempool_host_memory_size:Host memory to reserve(in bytes) (int)
parm:           mempool_small_pool_size:Size of genpool for small allocations (in bytes) (ulong)
parm:           mempool_small_alloc_max:Threshold (in bytes) for deciding if an allocation is small (ulong)
parm:           dup_helper_enable:enable duplicate routing id unload helper (int)
parm:           wc_enable:enable write combining (int)

Terms of contribution:

By submitting this pull request, I agree that this contribution is dual-licensed under the terms of both the Apache License, version 2.0, and the MIT license.

@yeazelm yeazelm requested review from bcressey and vigh-m March 13, 2026 18:39
Signed-off-by: Matthew Yeazel <yeazelm@amazon.com>
@yeazelm
Copy link
Contributor Author

yeazelm commented Mar 13, 2026

^ Updated from PR comments to include the 2x_ prefix.

@yeazelm yeazelm merged commit 0b3e94b into bottlerocket-os:develop Mar 13, 2026
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants