Re: [gentoo-user] march cflag for Intel Pentium Dual-Core E2160 SLA8Z Malay processor
ср, 3 окт. 2018 г. в 12:50, Walter Dnes : > > What's happening is that the ebuild is going through a lookup table of > CPU flags, and saying... "if you invoke a certain advanced feature, then > you also have to invoke the base version of that feature". If you ask > for the advanced feature, but not the base feature, it's like trying to > build the top 4 storeys of a 10-storey building without the bottom 6 > storeys. From your output... > > If you're calling for avx2, then you also need avx > > cpu_flags_x86_avx2? ( cpu_flags_x86_avx ) > > If you're calling for sse4_2, then you also need sse4_1 > > cpu_flags_x86_sse4_2? ( cpu_flags_x86_sse4_1 ) > > If you're calling for sse4_1, then you also need ssse3 > > cpu_flags_x86_sse4_1? ( cpu_flags_x86_ssse3 ) > > If you're calling for ssse3, then you also need sse3 (count the "s") > > cpu_flags_x86_ssse3? ( cpu_flags_x86_sse3 ) > > If you're calling for sse3, then you also need sse2 > > cpu_flags_x86_sse3? ( cpu_flags_x86_sse2 ) > > If you're calling for sse2, then you also need sse > > cpu_flags_x86_sse2? ( cpu_flags_x86_sse ) > > If you're calling for sse, then you also need mmxext > > cpu_flags_x86_sse? ( cpu_flags_x86_mmxext ) > > If you're calling for mmxext, then you also need mmx > > cpu_flags_x86_mmxext? ( cpu_flags_x86_mmx ) > > AMD If you're calling for 3dnowext, then you also need 3dnow > > cpu_flags_x86_3dnowext? ( cpu_flags_x86_3dnow ) > > AMD If you're calling for 3dnow, then you also need mmx > > cpu_flags_x86_3dnow? ( cpu_flags_x86_mmx ) > > Basically, if flag B is an extension of flag A and builds on it, then > calling flag B requires calling flag A. Think of it as a "march flag > dependency tree". Ok, thank you for explanation. Interestingly, I have build almost entire system without mmxext flag and only firefox, ffmpeg and vlc started to complane about it.
Re: [gentoo-user] march cflag for Intel Pentium Dual-Core E2160 SLA8Z Malay processor
What's happening is that the ebuild is going through a lookup table of CPU flags, and saying... "if you invoke a certain advanced feature, then you also have to invoke the base version of that feature". If you ask for the advanced feature, but not the base feature, it's like trying to build the top 4 storeys of a 10-storey building without the bottom 6 storeys. From your output... If you're calling for avx2, then you also need avx > cpu_flags_x86_avx2? ( cpu_flags_x86_avx ) If you're calling for sse4_2, then you also need sse4_1 > cpu_flags_x86_sse4_2? ( cpu_flags_x86_sse4_1 ) If you're calling for sse4_1, then you also need ssse3 > cpu_flags_x86_sse4_1? ( cpu_flags_x86_ssse3 ) If you're calling for ssse3, then you also need sse3 (count the "s") > cpu_flags_x86_ssse3? ( cpu_flags_x86_sse3 ) If you're calling for sse3, then you also need sse2 > cpu_flags_x86_sse3? ( cpu_flags_x86_sse2 ) If you're calling for sse2, then you also need sse > cpu_flags_x86_sse2? ( cpu_flags_x86_sse ) If you're calling for sse, then you also need mmxext > cpu_flags_x86_sse? ( cpu_flags_x86_mmxext ) If you're calling for mmxext, then you also need mmx > cpu_flags_x86_mmxext? ( cpu_flags_x86_mmx ) AMD If you're calling for 3dnowext, then you also need 3dnow > cpu_flags_x86_3dnowext? ( cpu_flags_x86_3dnow ) AMD If you're calling for 3dnow, then you also need mmx > cpu_flags_x86_3dnow? ( cpu_flags_x86_mmx ) Basically, if flag B is an extension of flag A and builds on it, then calling flag B requires calling flag A. Think of it as a "march flag dependency tree". -- Walter Dnes I don't run "desktop environments"; I run useful applications
Re: [gentoo-user] march cflag for Intel Pentium Dual-Core E2160 SLA8Z Malay processor
On Fri, Sep 28, 2018 at 5:33 AM Marc Joliet wrote: > > Am Freitag, 28. September 2018, 06:04:29 CEST schrieb Walter Dnes: > > mmxext does not have its own flag in /proc/cpuinfo. > > ??? > > % cat /proc/cpuinfo > [...] > 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 cpuid extd_apicid pni cx16 lahf_lm > cmp_legacy svm extapic cr8_legacy 3dnowprefetch vmmcall > > ^^^ ^^ > (I hope the formatting doesn't get messed up, the point is that my > /proc/cpuinfo *does* show mmxext.) That cpuid flag only appears on AMD processors. It is never set for Intel processors. cpuid2cpuflags makes a special exception for this case. https://github.com/mgorny/cpuid2cpuflags/blob/master/src/x86.c#L71
Re: [gentoo-user] march cflag for Intel Pentium Dual-Core E2160 SLA8Z Malay processor
вт, 2 окт. 2018 г. в 22:45, gevisz : > > So, mmxext flag is indeed absent here. > > I have not yet included it in CPU_FLAGS_X86 and think that > it produces a strange error messages when I try emerge some > packages like firefox: > > # emerge firefox > These are the packages that would be merged, in order: > Calculating dependencies... done! > > !!! The ebuild selected to satisfy > ">=media-video/ffmpeg-1.2.6-r1:0[X?,encode?,gsm?,jpeg2k?,mp3?,opus?,sdl?,speex?,theora?,threads?,truetype?,vaapi?,vdpau?,x264?]" > has unmet requirements. > - media-video/ffmpeg-3.3.6::gentoo USE="X alsa bzip2 encode gpl > hardcoded-tables iconv mp3 network opengl postproc sdl threads > truetype vdpau vorbis x264 xcb xvid zlib (-altivec) -amr -amrenc > -bluray -bs2b -cdio (-celt) -chromaprint -chromium -cpudetection > -debug -doc -fdk -flite -fontconfig -frei0r -fribidi -gcrypt -gme -gmp > -gnutls -gsm -iec61883 -ieee1394 -jack -jpeg2k -kvazaar -ladspa > -libass -libcaca -libilbc -librtmp -libsoxr -libv4l -lzma (-mipsdspr1) > (-mipsdspr2) (-mipsfpu) (-mmal) -modplug -nvenc -openal -openh264 > -openssl -opus -oss -pic -pulseaudio -rubberband -samba -schroedinger > -snappy -sofalizer -speex -ssh -static-libs -test -theora -twolame > -v4l -vaapi -vpx -wavpack -webp -x265 -zeromq -zimg -zvbi" > ABI_X86="(64) -32 (-x32)" CPU_FLAGS_X86="mmx sse sse2 sse3 ssse3 > -3dnow -3dnowext -aes -avx -avx2 -fma3 -fma4 -mmxext -sse4_1 -sse4_2 > -xop" FFTOOLS="aviocat cws2fws ffescape ffeval ffhash fourcc2pixfmt > graph2dot ismindex pktdumper qt-faststart sidxindex trasher" > > The following REQUIRED_USE flag constraints are unsatisfied: > cpu_flags_x86_sse? ( cpu_flags_x86_mmxext ) > > The above constraints are a subset of the following complete expression: > libv4l? ( v4l ) fftools_cws2fws? ( zlib ) test? ( encode ) > postproc? ( gpl ) frei0r? ( gpl ) cdio? ( gpl ) samba? ( gpl ) encode? > ( x264? ( gpl ) x265? ( gpl ) xvid? ( gpl ) X? ( !xcb? ( gpl ) ) ) > arm64? ( cpu_flags_arm_v8 ) cpu_flags_arm_v8? ( cpu_flags_arm_vfpv3 > cpu_flags_arm_neon ) cpu_flags_arm_neon? ( cpu_flags_arm_thumb2 > cpu_flags_arm_vfp ) cpu_flags_arm_vfpv3? ( cpu_flags_arm_vfp ) > cpu_flags_arm_thumb2? ( cpu_flags_arm_v6 ) cpu_flags_arm_v6? ( > cpu_flags_arm_thumb ) cpu_flags_x86_avx2? ( cpu_flags_x86_avx ) > cpu_flags_x86_fma4? ( cpu_flags_x86_avx ) cpu_flags_x86_fma3? ( > cpu_flags_x86_avx ) cpu_flags_x86_xop? ( cpu_flags_x86_avx ) > cpu_flags_x86_avx? ( cpu_flags_x86_sse4_2 ) cpu_flags_x86_aes? ( > cpu_flags_x86_sse4_2 ) cpu_flags_x86_sse4_2? ( cpu_flags_x86_sse4_1 ) > cpu_flags_x86_sse4_1? ( cpu_flags_x86_ssse3 ) cpu_flags_x86_ssse3? ( > cpu_flags_x86_sse3 ) cpu_flags_x86_sse3? ( cpu_flags_x86_sse2 ) > cpu_flags_x86_sse2? ( cpu_flags_x86_sse ) cpu_flags_x86_sse? ( > cpu_flags_x86_mmxext ) cpu_flags_x86_mmxext? ( cpu_flags_x86_mmx ) > cpu_flags_x86_3dnowext? ( cpu_flags_x86_3dnow ) cpu_flags_x86_3dnow? ( > cpu_flags_x86_mmx ) > > (dependency required by "virtual/ffmpeg-9-r2::gentoo" [ebuild]) > (dependency required by "www-client/firefox-60.2.0::gentoo" [ebuild]) > (dependency required by "firefox" [argument]) > > I will try to include mmxext into CPU_FLAGS_X86 and see if this error > message appears again. Indeed, I have included mmxext into CPU_FLAGS_X86 and the above error message disappeared. My guess is that CPU_FLAGS_X86 is used only when emerging x32 libraries while -match=native is used for x64 libraries. When both x32 and x64 libraries appear in the same package, portage somehow notices the conflict and reports it.
Re: [gentoo-user] march cflag for Intel Pentium Dual-Core E2160 SLA8Z Malay processor
ср, 19 сент. 2018 г. в 11:38, Walter Dnes : > > If you have gcc *ON THE TARGET MACHINE*, execute the command... > > gcc -c -Q -march=native --help=target | grep march= I finally installed a web browser on the target computer, and so can (just for the history:) copy and paste the result of running this and other commands on the target computer. # gcc -c -Q -march=native --help=target | grep march= -march=core2 So, you were right about core2 # lscpu Architecture:x86_64 CPU op-mode(s): 32-bit, 64-bit Byte Order: Little Endian CPU(s): 2 On-line CPU(s) list: 0,1 Thread(s) per core: 1 Core(s) per socket: 2 Socket(s): 1 NUMA node(s):1 Vendor ID: GenuineIntel CPU family: 6 Model: 15 Model name: Intel(R) Pentium(R) Dual CPU E2160 @ 1.80GHz Stepping:13 CPU MHz: 1800.000 CPU max MHz: 1800. CPU min MHz: 1200. BogoMIPS:3599.97 L1d cache: 32K L1i cache: 32K L2 cache:1024K NUMA node0 CPU(s): 0,1 Flags: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx lm constant_tsc arch_perfmon pebs bts rep_good nopl aperfmperf eagerfpu pni dtes64 monitor ds_cpl est tm2 ssse3 cx16 xtpr pdcm lahf_lm kaiser dtherm So, mmxext flag is indeed absent here. I have not yet included it in CPU_FLAGS_X86 and think that it produces a strange error messages when I try emerge some packages like firefox: # emerge firefox These are the packages that would be merged, in order: Calculating dependencies... done! !!! The ebuild selected to satisfy ">=media-video/ffmpeg-1.2.6-r1:0[X?,encode?,gsm?,jpeg2k?,mp3?,opus?,sdl?,speex?,theora?,threads?,truetype?,vaapi?,vdpau?,x264?]" has unmet requirements. - media-video/ffmpeg-3.3.6::gentoo USE="X alsa bzip2 encode gpl hardcoded-tables iconv mp3 network opengl postproc sdl threads truetype vdpau vorbis x264 xcb xvid zlib (-altivec) -amr -amrenc -bluray -bs2b -cdio (-celt) -chromaprint -chromium -cpudetection -debug -doc -fdk -flite -fontconfig -frei0r -fribidi -gcrypt -gme -gmp -gnutls -gsm -iec61883 -ieee1394 -jack -jpeg2k -kvazaar -ladspa -libass -libcaca -libilbc -librtmp -libsoxr -libv4l -lzma (-mipsdspr1) (-mipsdspr2) (-mipsfpu) (-mmal) -modplug -nvenc -openal -openh264 -openssl -opus -oss -pic -pulseaudio -rubberband -samba -schroedinger -snappy -sofalizer -speex -ssh -static-libs -test -theora -twolame -v4l -vaapi -vpx -wavpack -webp -x265 -zeromq -zimg -zvbi" ABI_X86="(64) -32 (-x32)" CPU_FLAGS_X86="mmx sse sse2 sse3 ssse3 -3dnow -3dnowext -aes -avx -avx2 -fma3 -fma4 -mmxext -sse4_1 -sse4_2 -xop" FFTOOLS="aviocat cws2fws ffescape ffeval ffhash fourcc2pixfmt graph2dot ismindex pktdumper qt-faststart sidxindex trasher" The following REQUIRED_USE flag constraints are unsatisfied: cpu_flags_x86_sse? ( cpu_flags_x86_mmxext ) The above constraints are a subset of the following complete expression: libv4l? ( v4l ) fftools_cws2fws? ( zlib ) test? ( encode ) postproc? ( gpl ) frei0r? ( gpl ) cdio? ( gpl ) samba? ( gpl ) encode? ( x264? ( gpl ) x265? ( gpl ) xvid? ( gpl ) X? ( !xcb? ( gpl ) ) ) arm64? ( cpu_flags_arm_v8 ) cpu_flags_arm_v8? ( cpu_flags_arm_vfpv3 cpu_flags_arm_neon ) cpu_flags_arm_neon? ( cpu_flags_arm_thumb2 cpu_flags_arm_vfp ) cpu_flags_arm_vfpv3? ( cpu_flags_arm_vfp ) cpu_flags_arm_thumb2? ( cpu_flags_arm_v6 ) cpu_flags_arm_v6? ( cpu_flags_arm_thumb ) cpu_flags_x86_avx2? ( cpu_flags_x86_avx ) cpu_flags_x86_fma4? ( cpu_flags_x86_avx ) cpu_flags_x86_fma3? ( cpu_flags_x86_avx ) cpu_flags_x86_xop? ( cpu_flags_x86_avx ) cpu_flags_x86_avx? ( cpu_flags_x86_sse4_2 ) cpu_flags_x86_aes? ( cpu_flags_x86_sse4_2 ) cpu_flags_x86_sse4_2? ( cpu_flags_x86_sse4_1 ) cpu_flags_x86_sse4_1? ( cpu_flags_x86_ssse3 ) cpu_flags_x86_ssse3? ( cpu_flags_x86_sse3 ) cpu_flags_x86_sse3? ( cpu_flags_x86_sse2 ) cpu_flags_x86_sse2? ( cpu_flags_x86_sse ) cpu_flags_x86_sse? ( cpu_flags_x86_mmxext ) cpu_flags_x86_mmxext? ( cpu_flags_x86_mmx ) cpu_flags_x86_3dnowext? ( cpu_flags_x86_3dnow ) cpu_flags_x86_3dnow? ( cpu_flags_x86_mmx ) (dependency required by "virtual/ffmpeg-9-r2::gentoo" [ebuild]) (dependency required by "www-client/firefox-60.2.0::gentoo" [ebuild]) (dependency required by "firefox" [argument]) I will try to include mmxext into CPU_FLAGS_X86 and see if this error message appears again. And finally: # gcc -c -Q -march=native --help=target The following options are target specific: -m128bit-long-double[enabled] -m16[disabled] -m32[disabled] -m3dnow [disabled] -m3dnowa[disabled] -m64[enabled] -m80387 [enabled] -m8bit-idiv [disabled]
Re: [gentoo-user] march cflag for Intel Pentium Dual-Core E2160 SLA8Z Malay processor
Am Freitag, 28. September 2018, 06:04:29 CEST schrieb Walter Dnes: > mmxext does not have its own flag in /proc/cpuinfo. ??? % cat /proc/cpuinfo [...] 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 cpuid extd_apicid pni cx16 lahf_lm cmp_legacy svm extapic cr8_legacy 3dnowprefetch vmmcall ^^^ ^^ (I hope the formatting doesn't get messed up, the point is that my /proc/cpuinfo *does* show mmxext.) -- Marc Joliet -- "People who think they know everything really annoy those of us who know we don't" - Bjarne Stroustrup signature.asc Description: This is a digitally signed message part.
Re: [gentoo-user] march cflag for Intel Pentium Dual-Core E2160 SLA8Z Malay processor
On Tue, Sep 25, 2018 at 11:11:41AM +0300, gevisz wrote > > The target processor does not support mmxext. > > Strange enough but cpuid2cpuflags shows that it does: > # cpuid2cpuflags > CPU_FLAGS_X86: mmx mmxext sse sse2 sse3 ssse3 mmxext does not have its own flag in /proc/cpuinfo. This is an extension to the basic mmx instructions. It was adopted in 1999 by Intel in the Pentium 3 SSE instructions and also by the AMD Athlon. https://en.wikipedia.org/wiki/Extended_MMX https://www.funtoo.org/CPU_FLAGS -- Walter Dnes I don't run "desktop environments"; I run useful applications
Re: [gentoo-user] march cflag for Intel Pentium Dual-Core E2160 SLA8Z Malay processor
вт, 25 сент. 2018 г. в 7:07, gevisz : > > вс, 23 сент. 2018 г. в 10:10, Walter Dnes : > > > > On Thu, Sep 20, 2018 at 01:00:39AM +0300, gevisz wrote > > > , 19 . 2018 ??. ?? 11:38, Walter Dnes : > > > > > > According to > > > > http://www.cpu-world.com/sspec/SL/SLA8Z.html it has... > > > > > > > > MMX SSE SSE2 SSE3 SSSE3 > > > > > > Do you mean that it would be enough to set > > > CFLAGS="-O2 -pipe mmx sse sse2 sse3 ssse3" > > > without setting the march cflag at all? > > > > Yes, that would work. Remember also to include in make.conf > > > > CPU_FLAGS_X86="mmx mmxext sse sse2 sse3 ssse3" > > The target processor does not support mmxext. Strange enough but cpuid2cpuflags shows that it does: # cpuid2cpuflags CPU_FLAGS_X86: mmx mmxext sse sse2 sse3 ssse3 > > In your jpeg image, I see that the flags include mmx, sse, sse2, pni, > > and ssse3. "pni" == "Prescott New Instructions" == "SSE3". Looking at > > https://gcc.gnu.org/onlinedocs/gcc-7.3.0/gcc/x86-Options.html#x86-Options > > I suggest "-march=core2" with CPU_FLAGS_X86 same as above. The "core2" > > option uses MMX, SSE, SSE2, SSE3 and SSSE3 instructions, all of which > > show up in the listing on your jpeg. > > Thank you. Looking into https://wiki.gentoo.org/wiki/Safe_CFLAGS#Intel > I also concluded that for the target processor I should set "-march=core2" > but I did not know that core2 option is exactly equivalent to setting mmx, > sse, sse2, sse3 and ssse3 instructions. > > So, I decided to spend a day to get my hands on the target computer > and compile everything on it with "-march=native" no matter how much > time it takes. > > To conclude this thread, I will post the output of the commands > suggested in this thread later, after the system install will be finished, > just in case somebody will need them in the future.
Re: [gentoo-user] march cflag for Intel Pentium Dual-Core E2160 SLA8Z Malay processor
Thanks to all who has replied to this thread so far.
Re: [gentoo-user] march cflag for Intel Pentium Dual-Core E2160 SLA8Z Malay processor
вс, 23 сент. 2018 г. в 10:10, Walter Dnes : > > On Thu, Sep 20, 2018 at 01:00:39AM +0300, gevisz wrote > > , 19 . 2018 ??. ?? 11:38, Walter Dnes : > > > > According to > > > http://www.cpu-world.com/sspec/SL/SLA8Z.html it has... > > > > > > MMX SSE SSE2 SSE3 SSSE3 > > > > Do you mean that it would be enough to set > > CFLAGS="-O2 -pipe mmx sse sse2 sse3 ssse3" > > without setting the march cflag at all? > > Yes, that would work. Remember also to include in make.conf > > CPU_FLAGS_X86="mmx mmxext sse sse2 sse3 ssse3" The target processor does not support mmxext. > In your jpeg image, I see that the flags include mmx, sse, sse2, pni, > and ssse3. "pni" == "Prescott New Instructions" == "SSE3". Looking at > https://gcc.gnu.org/onlinedocs/gcc-7.3.0/gcc/x86-Options.html#x86-Options > I suggest "-march=core2" with CPU_FLAGS_X86 same as above. The "core2" > option uses MMX, SSE, SSE2, SSE3 and SSSE3 instructions, all of which > show up in the listing on your jpeg. Thank you. Looking into https://wiki.gentoo.org/wiki/Safe_CFLAGS#Intel I also concluded that for the target processor I should set "-march=core2" but I did not know that core2 option is exactly equivalent to setting mmx, sse, sse2, sse3 and ssse3 instructions. So, I decided to spend a day to get my hands on the target computer and compile everything on it with "-march=native" no matter how much time it takes. To conclude this thread, I will post the output of the commands suggested in this thread later, after the system install will be finished, just in case somebody will need them in the future.
Re: [gentoo-user] march cflag for Intel Pentium Dual-Core E2160 SLA8Z Malay processor
On 9/23/18 3:09 AM, Walter Dnes wrote: > On Thu, Sep 20, 2018 at 01:00:39AM +0300, gevisz wrote >> , 19 . 2018 ??. ?? 11:38, Walter Dnes : > >>> According to >>> http://www.cpu-world.com/sspec/SL/SLA8Z.html it has... >>> >>> MMX SSE SSE2 SSE3 SSSE3 >> >> Do you mean that it would be enough to set >> CFLAGS="-O2 -pipe mmx sse sse2 sse3 ssse3" >> without setting the march cflag at all? > > Yes, that would work. Remember also to include in make.conf > > CPU_FLAGS_X86="mmx mmxext sse sse2 sse3 ssse3" > > In your jpeg image, I see that the flags include mmx, sse, sse2, pni, > and ssse3. "pni" == "Prescott New Instructions" == "SSE3". Looking at > https://gcc.gnu.org/onlinedocs/gcc-7.3.0/gcc/x86-Options.html#x86-Options > I suggest "-march=core2" with CPU_FLAGS_X86 same as above. The "core2" > option uses MMX, SSE, SSE2, SSE3 and SSSE3 instructions, all of which > show up in the listing on your jpeg. > > https://en.wikipedia.org/wiki/SSE3 >> SSE3, Streaming SIMD Extensions 3, also known by its Intel code name >> Prescott New Instructions (PNI), is the third iteration of the SSE >> instruction set for the IA-32 (x86) architecture. > https://wiki.gentoo.org/wiki/CPU_FLAGS_X86 and similar wiki pages are good links to reference. MG (M. Gorny) has blogged on this subject too:: https://nlug.ml1.co.uk/2016/09/gentoo-portage-cpu_flags_x86-introduction-2015-01-28/5332 I'd be interested in blogs, irc, docs, etc, where distcc is being used as part of a (gentoo-centric) CI/CD and/or cross-compiling for smaller/older target systems, of any architecture (arm or mips or x86 or ?). James
Re: [gentoo-user] march cflag for Intel Pentium Dual-Core E2160 SLA8Z Malay processor
On 9/23/18 3:20 AM, Walter Dnes wrote: > On Thu, Sep 20, 2018 at 01:00:39AM +0300, gevisz wrote >> , 19 . 2018 ??. ?? 11:38, Walter Dnes : > >>> According to >>> http://www.cpu-world.com/sspec/SL/SLA8Z.html it has... >>> >>> MMX SSE SSE2 SSE3 SSSE3 >> >> Do you mean that it would be enough to set >> CFLAGS="-O2 -pipe mmx sse sse2 sse3 ssse3" >> without setting the march cflag at all? > > Yes, that would work. Remember also to include in make.conf > > CPU_FLAGS_X86="mmx mmxext sse sse2 sse3 ssse3" > > In your jpeg image, I see that the flags include mmx, sse, sse2, pni, > and ssse3. "pni" == "Prescott New Instructions" == "SSE3". Looking at > https://gcc.gnu.org/onlinedocs/gcc-7.3.0/gcc/x86-Options.html#x86-Options > I suggest "-march=core2" with CPU_FLAGS_X86 same as above. The "core2" > option uses MMX, SSE, SSE2, SSE3 and SSSE3 instructions, all of which > show up in the listing on your jpeg. > > https://en.wikipedia.org/wiki/SSE3 >> SSE3, Streaming SIMD Extensions 3, also known by its Intel code name >> Prescott New Instructions (PNI), is the third iteration of the SSE >> instruction set for the IA-32 (x86) architecture. > Here is some short docs (by MG) on the subject, that are good to save for future reference:: https://nlug.ml1.co.uk/2016/09/gentoo-portage-cpu_flags_x86-introduction-2015-01-28/5332 or in the gentoo wiki:: https://wiki.gentoo.org/wiki/CPU_FLAGS_X86 Note, some years ago, distcc was excellent as I used it daily. Like most codes it changes/stresses over the years. So follow distcc details closely if you intend for it's dependable results. Perhaps someone (gentoo) is using it in a CI/CD configuration, which would be of keen interest to many. hth, James
Re: [gentoo-user] march cflag for Intel Pentium Dual-Core E2160 SLA8Z Malay processor
On Thu, Sep 20, 2018 at 01:00:39AM +0300, gevisz wrote > , 19 . 2018 ??. ?? 11:38, Walter Dnes : > > According to > > http://www.cpu-world.com/sspec/SL/SLA8Z.html it has... > > > > MMX SSE SSE2 SSE3 SSSE3 > > Do you mean that it would be enough to set > CFLAGS="-O2 -pipe mmx sse sse2 sse3 ssse3" > without setting the march cflag at all? Yes, that would work. Remember also to include in make.conf CPU_FLAGS_X86="mmx mmxext sse sse2 sse3 ssse3" In your jpeg image, I see that the flags include mmx, sse, sse2, pni, and ssse3. "pni" == "Prescott New Instructions" == "SSE3". Looking at https://gcc.gnu.org/onlinedocs/gcc-7.3.0/gcc/x86-Options.html#x86-Options I suggest "-march=core2" with CPU_FLAGS_X86 same as above. The "core2" option uses MMX, SSE, SSE2, SSE3 and SSSE3 instructions, all of which show up in the listing on your jpeg. https://en.wikipedia.org/wiki/SSE3 > SSE3, Streaming SIMD Extensions 3, also known by its Intel code name > Prescott New Instructions (PNI), is the third iteration of the SSE > instruction set for the IA-32 (x86) architecture. -- Walter Dnes I don't run "desktop environments"; I run useful applications
Re: [gentoo-user] march cflag for Intel Pentium Dual-Core E2160 SLA8Z Malay processor
> On 2018-09-19, at 17:54, Jack wrote: > > Unless I'm missing something, I'm surprised nobody has mentioned one > potential problem. Unless you are careful, code you compile for an AMD may > not run on an Intel. If you are just going to compile binary packages to > move and install, this might be OK (assuming you don't trip over trying to > run test during a build.) You should be able to come up with settings so > compiled code will run on either architecture, but I have no idea what the > side effects might be, such as larger and/or less efficient code. I almost > wonder if this doesn't count as cross-compiling, even though it is not a > totally incompatible architecture. Hopefully someone can either expand on > this, or tell me why I'm barking up the wrong tree. I've dealt with this problem before. The key is flags like -mtune=generic and not using -march=native. Optimisations should still be okay. Andrew
Re: [gentoo-user] march cflag for Intel Pentium Dual-Core E2160 SLA8Z Malay processor
чт, 20 сент. 2018 г. в 0:56, Jack : > > On 9/19/18 5:45 PM, gevisz wrote: > > вт, 18 сент. 2018 г. в 22:44, George Kettleborough : > >> If you can run gcc on the new system first you can find out what flags > >> -march=native would produce and use those. See: > >> https://blogs.gentoo.org/mgorny/2014/06/23/inlining-marchnative-for-distcc/ > > Thank you for the link. > > > > It would be useful if I had an access to the target computer and decided > > to set up distcc. May be I would. In the future. However, currently, I don't > > have access to the target computer and hope to get without such an access. > > Just with the full name of the processor and the output of lspci command > > run on the target computer, which I got only a few minutes ago. > > The corresponding image is attached to this e-mail. > >> On Tue, 18 Sep 2018 at 08:24, gevisz wrote: > >>> Currently, I am prepairing to build Gentoo system on > >>> computer with AMD Athlon 64 X2 for computer with > >>> Intel Pentium Dual-Core E2160 SLA8Z Malay processor. > >>> > >>> What will be the correct march cflag for Intel Pentium > >>> Dual-Core E2160 SLA8Z Malay processor to set up in > >>> make.conf ? > >>> > >>> Am I right to use amd64 stage3 for Intel Pentium > >>> Dual-Core E2160 SLA8Z Malay processor? > >>> > >>> Thank you in advance. > > Unless I'm missing something, I'm surprised nobody has mentioned one > potential problem. Unless you are careful, code you compile for an AMD > may not run on an Intel. Thank you for your reply. I want to compile on AMD the code for Intel. If I did understand Gentoo manual correctly, it is possible if make.conf is set up correctly. > You should be able to come up with settings so compiled code will run > on either architecture No, I want to get Gentoo system optimized for the said Intel processor only.
Re: [gentoo-user] march cflag for Intel Pentium Dual-Core E2160 SLA8Z Malay processor
ср, 19 сент. 2018 г. в 11:38, Walter Dnes : > > On Tue, Sep 18, 2018 at 10:22:30AM +0300, gevisz wrote > > > What will be the correct march cflag for Intel Pentium > > Dual-Core E2160 SLA8Z Malay processor to set up in > > make.conf ? > > If you have gcc *ON THE TARGET MACHINE*, execute the command... > > gcc -c -Q -march=native --help=target | grep march= > > ...to find out what "-march=native" yields. Unfortunately, currently, I don't have an access to the target computer. Can I use the output of lspci instead of the command above? I have just got it by e-mail and attached the corresponding image to one of my previous replies in this thread. > According to > http://www.cpu-world.com/sspec/SL/SLA8Z.html it has... > > MMX SSE SSE2 SSE3 SSSE3 Do you mean that it would be enough to set CFLAGS="-O2 -pipe mmx sse sse2 sse3 ssse3" without setting the march cflag at all? > > Am I right to use amd64 stage3 for Intel Pentium > > Dual-Core E2160 SLA8Z Malay processor? > > Yes... assuming you want 64-bit mode. Ok. Thank you for your reply.
Re: [gentoo-user] march cflag for Intel Pentium Dual-Core E2160 SLA8Z Malay processor
On 9/19/18 5:45 PM, gevisz wrote: вт, 18 сент. 2018 г. в 22:44, George Kettleborough : If you can run gcc on the new system first you can find out what flags -march=native would produce and use those. See: https://blogs.gentoo.org/mgorny/2014/06/23/inlining-marchnative-for-distcc/ Thank you for the link. It would be useful if I had an access to the target computer and decided to set up distcc. May be I would. In the future. However, currently, I don't have access to the target computer and hope to get without such an access. Just with the full name of the processor and the output of lspci command run on the target computer, which I got only a few minutes ago. The corresponding image is attached to this e-mail. On Tue, 18 Sep 2018 at 08:24, gevisz wrote: Currently, I am prepairing to build Gentoo system on computer with AMD Athlon 64 X2 for computer with Intel Pentium Dual-Core E2160 SLA8Z Malay processor. What will be the correct march cflag for Intel Pentium Dual-Core E2160 SLA8Z Malay processor to set up in make.conf ? Am I right to use amd64 stage3 for Intel Pentium Dual-Core E2160 SLA8Z Malay processor? Thank you in advance. Unless I'm missing something, I'm surprised nobody has mentioned one potential problem. Unless you are careful, code you compile for an AMD may not run on an Intel. If you are just going to compile binary packages to move and install, this might be OK (assuming you don't trip over trying to run test during a build.) You should be able to come up with settings so compiled code will run on either architecture, but I have no idea what the side effects might be, such as larger and/or less efficient code. I almost wonder if this doesn't count as cross-compiling, even though it is not a totally incompatible architecture. Hopefully someone can either expand on this, or tell me why I'm barking up the wrong tree. Jack
Re: [gentoo-user] march cflag for Intel Pentium Dual-Core E2160 SLA8Z Malay processor
ср, 19 сент. 2018 г. в 0:53, james : > > On 9/18/18 3:22 AM, gevisz wrote: > > Currently, I am prepairing to build Gentoo system on > > computer with AMD Athlon 64 X2 for computer with > > Intel Pentium Dual-Core E2160 SLA8Z Malay processor. > > > > What will be the correct march cflag for Intel Pentium > > Dual-Core E2160 SLA8Z Malay processor to set up in > > make.conf ? > > > > Am I right to use amd64 stage3 for Intel Pentium > > Dual-Core E2160 SLA8Z Malay processor? > > Once the system is 'boostrapped', you can run cpuinfo > and look at the flags listed therein. There are way less > gentoo flags one can set for a CPU, than what cpuinfo reveals. > Also some might not be a good idea to set; you have to ferret > out those details per your cpu(s). Thank you for your reply. Unfortunately, currently, I don't have an access to the target computer. Can I use the output of lspci instead of cpuinfo? I have just got it by e-mail and attached the corresponding image to my previous reply in this thread.
Re: [gentoo-user] march cflag for Intel Pentium Dual-Core E2160 SLA8Z Malay processor
вт, 18 сент. 2018 г. в 22:44, George Kettleborough : > > If you can run gcc on the new system first you can find out what flags > -march=native would produce and use those. See: > https://blogs.gentoo.org/mgorny/2014/06/23/inlining-marchnative-for-distcc/ Thank you for the link. It would be useful if I had an access to the target computer and decided to set up distcc. May be I would. In the future. However, currently, I don't have access to the target computer and hope to get without such an access. Just with the full name of the processor and the output of lspci command run on the target computer, which I got only a few minutes ago. The corresponding image is attached to this e-mail. > On Tue, 18 Sep 2018 at 08:24, gevisz wrote: > > > > Currently, I am prepairing to build Gentoo system on > > computer with AMD Athlon 64 X2 for computer with > > Intel Pentium Dual-Core E2160 SLA8Z Malay processor. > > > > What will be the correct march cflag for Intel Pentium > > Dual-Core E2160 SLA8Z Malay processor to set up in > > make.conf ? > > > > Am I right to use amd64 stage3 for Intel Pentium > > Dual-Core E2160 SLA8Z Malay processor? > > > > Thank you in advance. > > >
Re: [gentoo-user] march cflag for Intel Pentium Dual-Core E2160 SLA8Z Malay processor
On Tue, Sep 18, 2018 at 10:22:30AM +0300, gevisz wrote > What will be the correct march cflag for Intel Pentium > Dual-Core E2160 SLA8Z Malay processor to set up in > make.conf ? If you have gcc *ON THE TARGET MACHINE*, execute the command... gcc -c -Q -march=native --help=target | grep march= ...to find out what "-march=native" yields. According to http://www.cpu-world.com/sspec/SL/SLA8Z.html it has... MMX SSE SSE2 SSE3 SSSE3 > Am I right to use amd64 stage3 for Intel Pentium > Dual-Core E2160 SLA8Z Malay processor? Yes... assuming you want 64-bit mode. -- Walter Dnes I don't run "desktop environments"; I run useful applications
Re: [gentoo-user] march cflag for Intel Pentium Dual-Core E2160 SLA8Z Malay processor
On 9/18/18 3:22 AM, gevisz wrote: > Currently, I am prepairing to build Gentoo system on > computer with AMD Athlon 64 X2 for computer with > Intel Pentium Dual-Core E2160 SLA8Z Malay processor. > > What will be the correct march cflag for Intel Pentium > Dual-Core E2160 SLA8Z Malay processor to set up in > make.conf ? > > Am I right to use amd64 stage3 for Intel Pentium > Dual-Core E2160 SLA8Z Malay processor? Once the system is 'boostrapped', you can run cpuinfo and look at the flags listed therein. There are way less gentoo flags one can set for a CPU, than what cpuinfo reveals. Also some might not be a good idea to set; you have to ferret out those details per your cpu(s). hth, James
Re: [gentoo-user] march cflag for Intel Pentium Dual-Core E2160 SLA8Z Malay processor
If you can run gcc on the new system first you can find out what flags -march=native would produce and use those. See: https://blogs.gentoo.org/mgorny/2014/06/23/inlining-marchnative-for-distcc/ George. On Tue, 18 Sep 2018 at 08:24, gevisz wrote: > > Currently, I am prepairing to build Gentoo system on > computer with AMD Athlon 64 X2 for computer with > Intel Pentium Dual-Core E2160 SLA8Z Malay processor. > > What will be the correct march cflag for Intel Pentium > Dual-Core E2160 SLA8Z Malay processor to set up in > make.conf ? > > Am I right to use amd64 stage3 for Intel Pentium > Dual-Core E2160 SLA8Z Malay processor? > > Thank you in advance. >
[gentoo-user] march cflag for Intel Pentium Dual-Core E2160 SLA8Z Malay processor
Currently, I am prepairing to build Gentoo system on computer with AMD Athlon 64 X2 for computer with Intel Pentium Dual-Core E2160 SLA8Z Malay processor. What will be the correct march cflag for Intel Pentium Dual-Core E2160 SLA8Z Malay processor to set up in make.conf ? Am I right to use amd64 stage3 for Intel Pentium Dual-Core E2160 SLA8Z Malay processor? Thank you in advance.