diff --git a/src/mpsd_software_manager/mpsd_software.py b/src/mpsd_software_manager/mpsd_software.py
index 364485ad60f6b450ee647505f3b264ef2c543dbd..0c17450fd721a7031af5bb92564c9a17c2c5d178 100755
--- a/src/mpsd_software_manager/mpsd_software.py
+++ b/src/mpsd_software_manager/mpsd_software.py
@@ -16,6 +16,7 @@ from pathlib import Path
 from typing import List, Tuple, Union
 import re
 import shutil
+from functools import cache
 
 # If 'rich' is available ("pip install rich" or "apt-get install python3-rich"),
 # then use coloured output, otherwise proceed as before
@@ -790,6 +791,7 @@ def prepare_environment(mpsd_release: str, root_dir: Path) -> List[str]:
     return available_package_sets
 
 
+@cache
 def get_native_microarchitecture():
     """Return native microarchitecture.