1

How to get CPU nanometers? I found some apps on google play which tell you cpu nanometers, but can't figure how to get that value from the system.

Can't find any info here or in google... sorry for the tiny question.

NullPointerException
  • 36,107
  • 79
  • 222
  • 382
  • 3
    Identify the CPU and then lookup the value in your internal database (that you have to create). BTW: The nanometer values are more or less fake. They identify a production process, not the real structure size. – Robert Oct 05 '16 at 14:11
  • Yep, most likely they query the CPU type [Android Get Processor Model](http://stackoverflow.com/questions/31783248/android-get-processor-model) and then use an internal database to look up the value. – Steeve Oct 05 '16 at 14:12
  • @Robert please do you have sample code to do it? have no idea of how to do that... – NullPointerException Oct 05 '16 at 14:23
  • @Steeve sample code will be apreciated, in your link there aren't info about nanometers – NullPointerException Oct 05 '16 at 14:23
  • @Robert: they're not really "fake"; AFAIK they really do correspond to a physical measurement of *something*. The issue is that there are choices in which feature of a transistor to measure, and other complicating factors. So Intel's 14nm process isn't necessarily equivalent to what someone else calls their 14nm process. (especially since there are other factors like shape (FinFET), strained silicon, and tons of other stuff.) – Peter Cordes Oct 05 '16 at 14:30
  • @NullPointerException I think you will have to make your own database, I too could not find an out-of-the-box db for this kind of data. – Steeve Oct 05 '16 at 14:32
  • do you mean that I should write a huge database with hundreds of processor codes and nanometers? is not the solution i was searching for. I thought that the value can be get from the system – NullPointerException Oct 05 '16 at 14:45

1 Answers1

0

Is not possible, the nanometers information of a cpu is stored in SMBIOS table, is a file system with read only for root user in this order:

  • /sys/firmware/efi/systab
  • /proc/efi/systab
  • /dev/mem

And can parsed using dmidecode command, but require root permissions and gnu binaries.

Remember, Android use a Linux kernel like, but require root permissions.

Other option is using a static database with the all information using vendor id and cpu id model, you can find it in guthub repositories.

e-info128
  • 3,727
  • 10
  • 40
  • 57
  • Do typical Android systems boot with UEFI for [DMI support](https://en.wikipedia.org/wiki/System_Management_BIOS)? Modern x86 PCs do, but I thought many Android devices were more bare metal than that, with only custom bootloaders. If an android system does have DMI / SMBIOS tables, the "supported systems" list on https://www.nongnu.org/dmidecode/ does include arm64 for Linux, with other OSes only i386 and x86-64. That doesn't necessarily mean all ARM64 Linux systems will work, since there is other hardware like ARM64 MacOS. – Peter Cordes Oct 10 '22 at 00:56