Opened 11 years ago

Closed 10 years ago

#9553 closed bug (fixed)

[AboutSystem] AMD Sempron is detected as Athlon 64

Reported by: Kev Owned by: nobody
Priority: normal Milestone: R1
Component: Applications/AboutSystem Version: R1/Development
Keywords: Cc:
Blocked By: Blocking:
Platform: x86

Description (last modified by diver)

On GCC2 Hybrid rev45385.

AMD Sempron 3100+ reported as Athlon 64 in About window and crash reports.

Change History (21)

comment:1 by diver, 11 years ago

Component: - GeneralApplications/AboutSystem
Description: modified (diff)
Summary: AMD Sempron 3100+ reported as Athlon 64 in About window and crash reports[AboutSystem] AMD Sempron is detected as Athlon 64

comment:2 by axeld, 11 years ago

Could you please add the output of the syslog command in a Terminal? Otherwise I have no idea what model to look for.

comment:3 by kallisti5, 11 years ago

I wrote a tool for this kind of thing last year. You can find it here:

http://cgit.haiku-os.org/haiku/tree/src/tools/cpuidtool.c

If we can get the cpuid for this cpu, we can add another case to OS.h

comment:4 by Kev, 11 years ago

That's funny, I never got an e-mail notification about the updates on this ticket, unlike other tickets. I'll go see what I can do (on a different comp atm)

comment:5 by Kev, 11 years ago

Now I'm over on hrev45404 gcc4.

@axeld:

/> syslog bash: syslog: command not found

Also /boot/common/var/log/syslog doesn't seem to have anything about my main cpu, only the graphics card, and I couldn't find a syslog command per se using Find.

@kallisti5:

I compiled it but it doesn't seem to tell me a cpuid, it wants me to give it one. Where do I find the cpuid in the first place?

comment:6 by axeld, 11 years ago

Sorry Kev, I meant sysinfo, not syslog. That application should also give you the CPUID you are looking for.

comment:7 by Kev, 11 years ago

No worries, 'scuse my ignorance in this area. Here's the output:

Kernel name: kernel_x86 built on: Mar 24 2013 01:24:32 version 0x1 1 AMD Athlon 64, revision 4fc0 running at 1800MHz (ID: 0x00000000 0x00000000)

CPU #0: "AMD Sempron(tm) Processor 3100+"

Type 0, family 15, model 12, stepping 0, features 0x078bfbff

FPU VME DE PSE TSC MSR PAE MCE CX8 APIC SEP MTRR PGE MCA CMOV PAT PSE36 CFLUSH MMX FXSTR SSE SSE2

Extended Intel: 0x00000000 Extended AMD: type 0, family 15, model 12, stepping 0, features 0xe3d3fbff

SCE NX AMD-MMX FFXSTR 64 3DNow+ 3DNow!

Power Management Features: TS FID VID TTP

Inst TLB: 2M/4M-byte pages, 8 entries, fully associative Data TLB: 2M/4M-byte pages, 8 entries, fully associative Inst TLB: 4K-byte pages, 32 entries, fully associative Data TLB: 4K-byte pages, 32 entries, fully associative L1 inst cache: 64 KB, 2-way set associative, 1 lines/tag, 64 bytes/line L1 data cache: 64 KB, 2-way set associative, 1 lines/tag, 64 bytes/line L2 cache: 256 KB, 16-way set associative, 1 lines/tag, 64 bytes/line

339488768 bytes free (used/max 195219456 / 534708224)

(cached 94760960)

64234 semaphores free (used/max 1302 / 65536)

3922 ports free (used/max 174 / 4096) 3944 threads free (used/max 152 / 4096) 2026 teams free (used/max 22 / 2048)

...which, since it gives 0 as an ID, I did not think would be useful to feed into the cpuidtool...?

comment:8 by kallisti5, 11 years ago

calculating....

Type 0, family 15, model 12, stepping 0, features 0x078bfbff FPU VME DE PSE TSC MSR PAE MCE CX8 APIC SEP MTRR PGE MCA CMOV PAT PSE36 CFLUSH MMX FXSTR SSE SSE2 Extended Intel: 0x00000000 Extended AMD: type 0, family 15, model 12, stepping 0, features 0xe3d3fbff

That helps... this is kind of an odd AMD cpu though.

#define EXT_FAMILY_MASK 0xF00000
#define EXT_MODEL_MASK  0x0F0000
#define FAMILY_MASK     0x000F00
#define MODEL_MASK      0x0000F0
#define STEPPING_MASK   0x00000F

That results in: 0xFC0FC0 That can't be right though as the extended id is the same as the base.

http://www.hardwaresecrets.com/printpage/201

The cpu-Z output above also identifies the cpu as an "Athlon 64."

I think what is going on here is the early 64-bit Sempron cpu's were closely based on the (then new) Athlon 64 chipsets.

This may be something we can't work around easily with cpuid's unless we use Axel's (kind of arbitrary) marketing name adjustments.

Kev, honestly your Sempron 3100+ cpu is closer to an Athlon 64 than an Sempron :) Do you know if your cpu supports 64-bit code?

Version 1, edited 11 years ago by kallisti5 (previous) (next) (diff)

comment:9 by Kev, 11 years ago

I'm not sure. Is there some software way I can find out? I only have Haiku and BeOS on here, and a stick with XBMC 12 on it I could use.

comment:10 by axeld, 11 years ago

Since it reports "64" as features, I'd assume it does support executing 64-bit code. Just not sure what kallisti5 is targeting at.

comment:11 by Kev, 11 years ago

Does that mean the x86_64 unsupported builds ought to boot on my system? I'd love to try that and compare the speed...(if only by feel, since I can't get BeRometer or Geekbench to work anymore.)

in reply to:  10 comment:12 by kallisti5, 11 years ago

Replying to axeld:

Since it reports "64" as features, I'd assume it does support executing 64-bit code. Just not sure what kallisti5 is targeting at.

Ah! Missed that! The overall issue is that this Sempron 3100+ is pretty much a rebranded Athlon 64. The CPUID's align to this. The only thing AMD changed was the marketing name stored on the chip.

Kev, this is a 64-bit cpu. (so anything x86_64 would work) :)

comment:13 by kallisti5, 10 years ago

if you have this machine still with Haiku, go ahead and run sysinfo on an image post-hrev46659 it will dump out some detection information.. however better detection may still require brand name detection which is kind of messy.

comment:14 by Kev, 10 years ago

On hrev46670:

Kernel name: kernel_x86 built on: Jan 14 2014 00:35:30 version 0x1
1 AMD Athlon 64, revision 4fc0 running at 1800MHz (ID: 0x00000000 0x00000000)

CPU #0: "AMD Sempron(tm) Processor 3100+"
	Raw CPUID: 0x010fc0, Haiku Internal ID (OS.h): 0x111fc
	Type 0, family 15, model 12, stepping 0, features 0x078bfbff
		FPU VME DE PSE TSC MSR PAE MCE CX8 APIC SEP MTRR PGE MCA CMOV PAT
		PSE36 CFLUSH MMX FXSTR SSE SSE2
	Extended Intel: 0x00000000
	Extended AMD: type 0, family 15, model 12, stepping 0, features 0xe3d3fbff
		SCE NX AMD-MMX FFXSTR 64 3DNow+ 3DNow!
	Power Management Features: TS FID VID TTP

	Inst TLB: 2M/4M-byte pages, 8 entries, fully associative
	Data TLB: 2M/4M-byte pages, 8 entries, fully associative
	Inst TLB: 4K-byte pages, 32 entries, fully associative
	Data TLB: 4K-byte pages, 32 entries, fully associative
	L1 inst cache: 64 KB, 2-way set associative, 1 lines/tag, 64 bytes/line
	L1 data cache: 64 KB, 2-way set associative, 1 lines/tag, 64 bytes/line
	L2 cache: 256 KB, 16-way set associative, 1 lines/tag, 64 bytes/line

 349835264 bytes free      (used/max  184872960 /  534708224)
                           (cached    229765120)
     64349 semaphores free (used/max       1187 /      65536)
      3936 ports free      (used/max        160 /       4096)
      3952 threads free    (used/max        144 /       4096)
      2027 teams free      (used/max         21 /       2048)

comment:15 by kallisti5, 10 years ago

Resolution: fixed
Status: newclosed

should be solved post hrev46677. Thanks!

comment:16 by Kev, 10 years ago

Resolution: fixed
Status: closedreopened

Almost :) It now says "AMD Sempron 64" in the About window. But the Sempron 3100+ is not 64-bit. (There may be a Sempron 3100+ 64-bit version also, but mine isn't.)

comment:17 by Kev, 10 years ago

Yeah, that's the trouble, they started making 64-bit Semprons at some point, but the originals weren't. See the bottom of https://en.wikipedia.org/wiki/Sempron , the 3100+ is listed under 32-bit but not 64-bit.

comment:18 by kallisti5, 10 years ago

I hate to tell you this, but your CPU says it supports 64-bit code:

SCE NX AMD-MMX FFXSTR 64 3DNow+ 3DNow!

That isn't me injecting that, but a flag on the cpuid for 64-bit support :-)

comment:19 by Kev, 10 years ago

Somehow I missed your comment:12 kallisti5, and I had in mind that x86_64 had not worked. However, I'm pretty sure I tried CentOS 6.4 in 32-bit and 64-bit versions and the 64 would not boot on this system. But maybe Haiku will, I'm happily downloading it right now... :)

comment:20 by Kev, 10 years ago

My bad! 64-bit Haiku totally boots on my Sempron. Thanks! Although, my Radeon is not supported, but oh well. Nice to know :) Can close again... <crawls under rock...>

comment:21 by kallisti5, 10 years ago

Resolution: fixed
Status: reopenedclosed
Note: See TracTickets for help on using tickets.