Skip to content

Add neoverse-v3ae support - #160

Open
abrandemuehl-rai wants to merge 2 commits into
archspec:masterfrom
abrandemuehl-rai:thor-cpu
Open

Add neoverse-v3ae support#160
abrandemuehl-rai wants to merge 2 commits into
archspec:masterfrom
abrandemuehl-rai:thor-cpu

Conversation

@abrandemuehl-rai

Copy link
Copy Markdown

This adds support for the jetson thor CPU based on the one I have (Neoverse-V3AE). The AE extension has a different id (0xd83) than the Neoverse-V3 (0xd84) https://github.com/torvalds/linux/blob/master/arch/arm64/include/asm/cputype.h#L95

As far as I understand there should be a neoverse_v3 that I should depend on, but I don't have one to test with, so I left it to someone who actually needs that specific cpu

@abrandemuehl-rai
abrandemuehl-rai marked this pull request as ready for review July 27, 2026 13:17
@abrandemuehl-rai

Copy link
Copy Markdown
Author

@alalazo is there a good way I should test this on my device? I was thinking testing would be to pip install -e a local copy and do archspec.cpu.host() to see if I get the right one

@baszalmstra baszalmstra left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yes, that works. One catch: archspec/json is a submodule of the Python repo, so check out this branch there:

cd archspec/archspec/json
git fetch origin pull/160/head && git checkout FETCH_HEAD
cd ../.. && pip install -e .
archspec cpu

You don't need the hardware though! The cpuinfo file you added only runs if it's listed in expected_target in tests/test_cpu.py in the Python repo. Add "linux-ubuntu24.04-neoverse_v3ae" there and CI covers it. I tried your branch and detection returns neoverse_v3ae.

On the generic neoverse_v3: I don't think it blocks this. According to my clanker LLVM models V3AE as its own core with ARMProcFamily = NeoverseV3 on the same armv9.2-a base, so v3 and v3ae are siblings off neoverse_v2 + armv9.2a; whoever adds 0xd84 can
mirror this entry. Take that with a grain of salt though.

Comment thread cpu/microarchitectures.json Outdated
]
}
},

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This empty line trips up formatting.

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Removed it and rebased while I was at it

@baszalmstra

Copy link
Copy Markdown

Friendly ping @alalazo, would you mind taking a look at this?

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.

3 participants