1 |
Am 11.12.2012 18:36, schrieb Frank Steinmetzger: |
2 |
> Hello list |
3 |
> |
4 |
> Long time no read... :) |
5 |
> |
6 |
> It follows a verbose preamble. For the actual questions see dashed line below. |
7 |
> TL;DR summary: it’s all about ricer-performance questions on a netbook. |
8 |
> |
9 |
> |
10 |
> I have the luck of having obtained a used netbook for free (Atom N450, single- |
11 |
> core with HT, 1 GB memory, 5400 rev HDD). During the last week I’ve been |
12 |
> experimenting with 32 and 64 bits on it and am still quite undecided which to |
13 |
> keep. My reasons: |
14 |
> |
15 |
> - They are not as far apart in CPU performance as is the Core2. |
16 |
> I posted a 32/64 comparison for Core2 a few months ago, which showed that |
17 |
> Lilypond speedup on 64 bit was 50%. On the Atom, it actually took 5% longer. |
18 |
> (Sadly, Blender doesn’t build on 32 bit right now). |
19 |
> - Startup times for hogs like Firefox and KDE are quite equal between the two |
20 |
> (that could be attributed in parts to the fact that the 64 bit partition |
21 |
> sits on the disk’s first sectors, while 32 bit sits at the other end, I |
22 |
> don’t know which end is faster). |
23 |
|
24 |
The first part (which actually is the outer edge of the physical disk). |
25 |
|
26 |
> - pro 64: it is very easy to use distcc, as opposed to 32 bits (see below). |
27 |
> - con 64: it uses about 50% more memory, 32 bit builds are a little faster. |
28 |
> |
29 |
> The RAM argument is the most convincing one right now, since more free RAM |
30 |
> means more cache, which means a faster system in the long run. Currently, KDE |
31 |
> after logon needs 150 MB on 32 bit, and 250 MB on 64 bit (without akonadi for |
32 |
> now). But awesome WM rocks on a netbook anyway. |
33 |
> |
34 |
> |
35 |
> ----------[ Questions begin ]------------------------------------------------ |
36 |
> |
37 |
> So I’m interested in you opinion and own experience about the following |
38 |
> arising questions: |
39 |
> |
40 |
> * From my observations, the benefit of 64 bit over 32 is much smaller for an |
41 |
> Atom than it is for my Core2. Am I right to assume thus that the Atom |
42 |
> architecture doesn’t have much to offer to 64 bit (such as extra registers)? |
43 |
> I’m not talking about memory here, since it’s limited to 2 GB in any case. |
44 |
> |
45 |
|
46 |
It has the same set of registers as your Core2. It's just that the Atom |
47 |
micro-architecture is terrible with regard to 64bit. That's just about |
48 |
the only reason that x32 was invented (and now that I've said it, I'm |
49 |
just waiting for the flamewar about it). |
50 |
|
51 |
> * The problem of distcc between different architectures: |
52 |
> The netbook already had an older 32 bit Gentoo installed. And since I have |
53 |
> a multilib host (march=core2), I though I could upgrade with distcc (using |
54 |
> march=atom on the netbook). But at some point more and more stuff stopped |
55 |
> working, eventually I got “invalid instruction” errors during emerge, hence |
56 |
> I figured that was a dead end. |
57 |
> |
58 |
> So is it possible to mix architectures in this way at all with distcc? |
59 |
> I also have crossdev for i686 installed, which even shares files with the |
60 |
> system’s normal multilib gcc. I find that odd. |
61 |
|
62 |
I don't think you can mix x86_32 and x64 easily but I've never tried. |
63 |
Did you try adding a CFLAGS="-m32"? From comparing `gcc -Q --help=target |
64 |
-march=xxx` they should be compatible. |
65 |
|
66 |
> I sped up the installation process for 32 bit by using a chroot on the big |
67 |
> machine, which worked nicely. But it’s not a long-term solution, b/c it |
68 |
> uses up too much disk space on the host. |
69 |
> |
70 |
|
71 |
I do the same using NFS, bind mounts and tmpfs. What do you mean by disk |
72 |
space? If you can use common CFLAGS, you could try installing binary |
73 |
packages from your build host on your netbook (use quickpkg and friends). |
74 |
|
75 |
> * I’m interested in the question of -O2 vs. -Os. |
76 |
> Some sources say -Os is bad, b/c it breaks debugging and is mainly untested. |
77 |
> I won’t do heavy developing on it anyway, and Atoms do have a puny cache. |
78 |
> So I wonder whether -Os would improve execution time and RAM usage |
79 |
> noticably. Diskspace itself is not an issue. |
80 |
> |
81 |
|
82 |
I use -Os but have no data to back it up (I'm also using an older Atom). |
83 |
Gentoo wiki suggests using "-O2 -fno-reorder-blocks |
84 |
-fno-reorder-functions" as a compromise. |
85 |
|
86 |
> * I’m also interested in comparing bin packages over self-compiled ones. |
87 |
> E.g. I did compile icedtea, even if it’s just for TV browser. :) |
88 |
> Can you name a Java benchmark to measure CPU performance? |
89 |
> |
90 |
|
91 |
How about something from this site: |
92 |
http://shootout.alioth.debian.org/ |
93 |
|
94 |
> * The last thing I’m going to set up is filesystem encryption, at least for ~. |
95 |
> I already know/think that AES would be the best choice due to limited CPU |
96 |
> power, but what else is there to heed besides key size? |
97 |
> |
98 |
|
99 |
Nothing, you're good. Hash and key chaining method have negligible |
100 |
impact. If you stick with an x86_32 userspace I suggest at least using |
101 |
an x64 kernel so you can use of CRYPTO_AES_X86_64. |
102 |
|
103 |
> * What other small benchmarks for CPU and memory can you recommend? So far I |
104 |
> tested with nbench and sysbench. The results are so-and-so. Some computation |
105 |
> stuff is much slower on 64 bit, some a bit faster. The applicability to |
106 |
> every-day use is of course a wibbly-wobbly argument. |
107 |
> I also tested the runtime of some application (packing and unpacking of |
108 |
> archives, throughput with dd, mencoder). If there is interest, I can post |
109 |
> the result of 21 runs on each platform, measured with GNU time. |
110 |
> |
111 |
|
112 |
How about trying some browser benchmarks. Check out the following for |
113 |
different aspects: |
114 |
http://ie.microsoft.com/testdrive/performance/mazesolver/default.html |
115 |
http://www.webkit.org/perf/sunspider/sunspider.html |
116 |
http://peacekeeper.futuremark.com/run.action |
117 |
|
118 |
There is also a Qt render benchmark |
119 |
http://code.google.com/p/qtperf/ |
120 |
Check out app-admin/eselect-qtgraphicssystem and see how they compare in |
121 |
appearance and numbers. |
122 |
|
123 |
Regards, |
124 |
Florian Philipp |