# AMD APU Pros/Cons?

## shrike

I have been considering options for a move to a quad core system from a X2 dual core. Recent HW issues with the X2 plus a wish for UEFI/GPT have me looking now. I have considered Intel Sandy Bridge offerings but USE=sna seems too rough at this time. And now I see UEFI is available on AMD MBs. So what are the Pros/Cons with AMD APUs on Gentoo?

Pros:

- Integrated GPU/CPU

- UEFI now available

Cons:

- ??

Are open source graphics drivers for AMD/ATI stable? March=native ok on AMD APUs (GCC-4.5.3)?

Thanks,

shrike

----------

## Ant P.

The open driver is usually stable, though pretty slow.

-march=native *should* work, but those chips don't have 3dnow instructions and I think they were released after GCC 4.5. You can find out what -march=native adds by doing:

```
gcc -v -march=native -x c /dev/null 2>&1 | grep -- '-march' | egrep -o -- '-+(m|param )\S+'
```

----------

## Jogie214

Hi,

I've a E-350 running here, the use of -march=native gave mw a lot of problems with qt apps since gcc is using 3dnow support, which the processor doesn't provide  :Sad: . Not sure about other AMD APUs  though. The Situation is supposed to be resolved with the gcc-4.6.x.

I use these:

```

CFLAGS="-mtune=generic -mmmx -msse -msse2 -msse3 -mssse3 -msse4a -mabm -O2 -pipe -mcx16 -mpopcnt"

```

Greets,

       Sebastian

----------

## shrike

Thnks for the feedback!

I should have been specific as to hardware which is the AMD FM1 socket with Llano APUs. I've searched the net and found a number of articles. This one,

http://www.phoronix.com/scan.php?page=article&item=amd_a83850_cpu&num=1

shows /proc/cpuinfo output for the AMD Fusion A8-3850 Llano.

```

processor : 3

vendor_id : AuthenticAMD

cpu family : 18

model : 1

model name : AMD A8-3850 APU with Radeon(tm) HD Graphics

stepping : 0

cpu MHz : 800.000

cache size : 1024 KB

physical id : 0

siblings : 4

core id : 1

cpu cores : 4

apicid : 3

initial apicid : 1

fpu : yes

fpu_exception : yes

cpuid level : 6

wp : yes

flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt pdpe1gb rdtscp lm 3dnowext 3dnow constant_tsc rep_good nopl nonstop_tsc extd_apicid aperfmperf pni monitor cx16 popcnt lahf_lm cmp_legacy svm extapic cr8_legacy abm sse4a misalignsse 3dnowprefetch osvw ibs skinit wdt npt lbrv svm_lock nrip_save pausefilter

bogomips : 5800.20

TLB size : 1536 4K pages

clflush size : 64

cache_alignment : 64

address sizes : 40 bits physical, 48 bits virtual

power management: ts ttp tm stc 100mhzsteps hwpstate

```

/proc/cpuinfo for my X2:

```

processor   : 1

vendor_id   : AuthenticAMD

cpu family   : 15

model      : 107

model name   : AMD Athlon(tm) 64 X2 Dual Core Processor 4400+

stepping   : 1

cpu MHz      : 2310.414

cache size   : 512 KB

physical id   : 0

siblings   : 2

core id      : 1

cpu cores   : 2

apicid      : 1

initial apicid   : 1

fpu      : yes

fpu_exception   : yes

cpuid level   : 1

wp      : yes

flags      : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt rdtscp lm 3dnowext 3dnow rep_good nopl extd_apicid pni cx16 lahf_lm cmp_legacy svm extapic cr8_legacy 3dnowprefetch lbrv

bogomips   : 4622.62

TLB size   : 1024 4K pages

clflush size   : 64

cache_alignment   : 64

address sizes   : 40 bits physical, 48 bits virtual

power management: ts fid vid ttp tm stc 100mhzsteps

```

The concept of combining CPU and GPU on one die thereby losing bulky/noisey graphics cards is very appealing to me.. if it works under Gentoo. Has anyone tried this hardware with gentoo?

Thanks,

shrike

----------

## Ion Silverbolt

 *Jogie214 wrote:*   

> Hi,
> 
> I've a E-350 running here, the use of -march=native gave mw a lot of problems with qt apps since gcc is using 3dnow support, which the processor doesn't provide . Not sure about other AMD APUs  though. The Situation is supposed to be resolved with the gcc-4.6.x.
> 
> I use these:
> ...

 

March=native or march=btver1 works great with GCC 4.6.2 for the Zacate CPU's. I have a whole system successfully compiled using those settings. Even though GCC 4.6.2 is hard masked, it's very stable. I haven't found anything that won't compile yet.

As for the Llano APU's, I think they're too new for specific settings.  Unlike Zacate, they still have 3dnow so there shouldn't be any problems with using amdfam10 and adding some of the missing optimizations.

----------

## Etal

 *Ion Silverbolt wrote:*   

> March=native or march=btver1 works great with GCC 4.6.2 for the Zacate CPU's. I have a whole system successfully compiled using those settings. Even though GCC 4.6.2 is hard masked, it's very stable. I haven't found anything that won't compile yet.

 

The only problems stopping gcc-4.6 from being unmasked is that it compiles broken grub and libmpeg2 (so if you watch out for these two and switch gcc if you ever need to compile them, everything should be fine.)

----------

## Ion Silverbolt

That explains the hard mask. Somehow both those package work on my system, but maybe it's hit and miss depending on other circumstances that exist on a system.

----------

## .:chrome:.

I use an AMD E-350 Processor (Asus E35M-1i) with these settings:

```
CFLAGS="-march=native -mtune=amdfam10 -mmmx -msse -msse2 -mssse3 -msse4a -Os -funsafe-loop-optimizations -fsched-pressure -pipe"

LDFLAGS="-Wl,-O1 -Wl,--enable-new-dtags -Wl,--sort-common -Wl,-s"
```

It works well as any Intel Atom I have tried!

----------

