* [Qemu-devel] qemu-system-i386 vs qemu-system-x86_64 ? @ 2012-09-14 7:39 Michael Tokarev 2012-09-14 9:33 ` Daniel P. Berrange 2012-09-14 19:29 ` Blue Swirl 0 siblings, 2 replies; 11+ messages in thread From: Michael Tokarev @ 2012-09-14 7:39 UTC (permalink / raw) To: qemu-devel What's the difference between the two except that the latter adds some more instructions (actually whole new subsytem) to the former? Why do we need -i386, what -x86_64 does not do which does -i386? Thanks, /mjt ^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [Qemu-devel] qemu-system-i386 vs qemu-system-x86_64 ? 2012-09-14 7:39 [Qemu-devel] qemu-system-i386 vs qemu-system-x86_64 ? Michael Tokarev @ 2012-09-14 9:33 ` Daniel P. Berrange 2012-09-14 9:39 ` Michael Tokarev 2012-09-14 19:29 ` Blue Swirl 1 sibling, 1 reply; 11+ messages in thread From: Daniel P. Berrange @ 2012-09-14 9:33 UTC (permalink / raw) To: Michael Tokarev; +Cc: qemu-devel On Fri, Sep 14, 2012 at 11:39:38AM +0400, Michael Tokarev wrote: > What's the difference between the two except that the > latter adds some more instructions (actually whole new > subsytem) to the former? Why do we need -i386, what > -x86_64 does not do which does -i386? AFAIK, qemu-system-x86_64 does not support KVM on a 32-bit host. Daniel -- |: http://berrange.com -o- http://www.flickr.com/photos/dberrange/ :| |: http://libvirt.org -o- http://virt-manager.org :| |: http://autobuild.org -o- http://search.cpan.org/~danberr/ :| |: http://entangle-photo.org -o- http://live.gnome.org/gtk-vnc :| ^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [Qemu-devel] qemu-system-i386 vs qemu-system-x86_64 ? 2012-09-14 9:33 ` Daniel P. Berrange @ 2012-09-14 9:39 ` Michael Tokarev 2012-09-14 10:00 ` Jan Kiszka 0 siblings, 1 reply; 11+ messages in thread From: Michael Tokarev @ 2012-09-14 9:39 UTC (permalink / raw) To: Daniel P. Berrange; +Cc: qemu-devel On 14.09.2012 13:33, Daniel P. Berrange wrote: > On Fri, Sep 14, 2012 at 11:39:38AM +0400, Michael Tokarev wrote: >> What's the difference between the two except that the >> latter adds some more instructions (actually whole new >> subsytem) to the former? Why do we need -i386, what >> -x86_64 does not do which does -i386? > > AFAIK, qemu-system-x86_64 does not support KVM on a 32-bit host. Isn't it the other way around? Or, does qemu-system-i386 EVER support kvm? Thanks, /mjt ^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [Qemu-devel] qemu-system-i386 vs qemu-system-x86_64 ? 2012-09-14 9:39 ` Michael Tokarev @ 2012-09-14 10:00 ` Jan Kiszka 2012-09-14 10:03 ` Michael Tokarev 0 siblings, 1 reply; 11+ messages in thread From: Jan Kiszka @ 2012-09-14 10:00 UTC (permalink / raw) To: Michael Tokarev; +Cc: qemu-devel On 2012-09-14 11:39, Michael Tokarev wrote: > On 14.09.2012 13:33, Daniel P. Berrange wrote: >> On Fri, Sep 14, 2012 at 11:39:38AM +0400, Michael Tokarev wrote: >>> What's the difference between the two except that the >>> latter adds some more instructions (actually whole new >>> subsytem) to the former? Why do we need -i386, what >>> -x86_64 does not do which does -i386? >> >> AFAIK, qemu-system-x86_64 does not support KVM on a 32-bit host. > > Isn't it the other way around? > > Or, does qemu-system-i386 EVER support kvm? It does support KVM on 32-bit (minus undiscovered bugs in 32-bit-only kernel code paths once in a while - none known right now, though). Don't confuse old qemu-kvm with QEMU here. The latter always supported KVM with both variants, and qemu-kvm now also does as it stopped being different. The major difference in qemu-system-i386 vs. qemu-system-x86_64 is on the TCG side: We measured noticeable performance benefits when running 32/16 bit OSes against qemu-system-i386 vs. using qemu-system-x86_64. I don't have numbers at hand, but colleagues decided to use the 32-bit version for that reason (when no KVM is available). Jan -- Siemens AG, Corporate Technology, CT RTC ITP SDP-DE Corporate Competence Center Embedded Linux ^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [Qemu-devel] qemu-system-i386 vs qemu-system-x86_64 ? 2012-09-14 10:00 ` Jan Kiszka @ 2012-09-14 10:03 ` Michael Tokarev 2012-09-14 10:12 ` Jan Kiszka 2012-09-14 12:24 ` Aurelien Jarno 0 siblings, 2 replies; 11+ messages in thread From: Michael Tokarev @ 2012-09-14 10:03 UTC (permalink / raw) To: Jan Kiszka; +Cc: qemu-devel On 14.09.2012 14:00, Jan Kiszka wrote: [] > The major difference in qemu-system-i386 vs. qemu-system-x86_64 is on > the TCG side: We measured noticeable performance benefits when running > 32/16 bit OSes against qemu-system-i386 vs. using qemu-system-x86_64. I > don't have numbers at hand, but colleagues decided to use the 32-bit > version for that reason (when no KVM is available). Interesting. Maybe someone should look at the difference on TCG side and merge interesting bits from i386 to x86_64... :) The thing is: x86_64 becomes the only x86 platform these days, or at least the MAIN platform. Thank you for the clarification -- very useful information indeed! /mjt ^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [Qemu-devel] qemu-system-i386 vs qemu-system-x86_64 ? 2012-09-14 10:03 ` Michael Tokarev @ 2012-09-14 10:12 ` Jan Kiszka 2012-09-14 10:20 ` Daniel P. Berrange 2012-09-14 10:39 ` Peter Maydell 2012-09-14 12:24 ` Aurelien Jarno 1 sibling, 2 replies; 11+ messages in thread From: Jan Kiszka @ 2012-09-14 10:12 UTC (permalink / raw) To: Michael Tokarev; +Cc: qemu-devel On 2012-09-14 12:03, Michael Tokarev wrote: > On 14.09.2012 14:00, Jan Kiszka wrote: > [] >> The major difference in qemu-system-i386 vs. qemu-system-x86_64 is on >> the TCG side: We measured noticeable performance benefits when running >> 32/16 bit OSes against qemu-system-i386 vs. using qemu-system-x86_64. I >> don't have numbers at hand, but colleagues decided to use the 32-bit >> version for that reason (when no KVM is available). > > Interesting. Maybe someone should look at the difference on TCG side > and merge interesting bits from i386 to x86_64... :) I suppose the difference - for our use cases at least - lies in the different register and address sizes. Maybe there is room for more runtime optimizations, we never looked in that details as -i386 still works fine. And, if you are on 32-bit host (see below) - but we aren't, qemu-system-x86_64 hurts even more. > > The thing is: x86_64 becomes the only x86 platform these days, or at > least the MAIN platform. I know, and I'm telling everyone. Still, too many crazy people keep on installing 32-bit distros or even 32-bit kernels. Maybe x64-32 will improve this. > > Thank you for the clarification -- very useful information indeed! > > /mjt > You are welcome. Jan -- Siemens AG, Corporate Technology, CT RTC ITP SDP-DE Corporate Competence Center Embedded Linux ^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [Qemu-devel] qemu-system-i386 vs qemu-system-x86_64 ? 2012-09-14 10:12 ` Jan Kiszka @ 2012-09-14 10:20 ` Daniel P. Berrange 2012-09-14 10:32 ` Jan Kiszka 2012-09-14 10:39 ` Peter Maydell 1 sibling, 1 reply; 11+ messages in thread From: Daniel P. Berrange @ 2012-09-14 10:20 UTC (permalink / raw) To: Jan Kiszka; +Cc: Michael Tokarev, qemu-devel On Fri, Sep 14, 2012 at 12:12:43PM +0200, Jan Kiszka wrote: > On 2012-09-14 12:03, Michael Tokarev wrote: > > On 14.09.2012 14:00, Jan Kiszka wrote: > > [] > >> The major difference in qemu-system-i386 vs. qemu-system-x86_64 is on > >> the TCG side: We measured noticeable performance benefits when running > >> 32/16 bit OSes against qemu-system-i386 vs. using qemu-system-x86_64. I > >> don't have numbers at hand, but colleagues decided to use the 32-bit > >> version for that reason (when no KVM is available). > > > > Interesting. Maybe someone should look at the difference on TCG side > > and merge interesting bits from i386 to x86_64... :) > > I suppose the difference - for our use cases at least - lies in the > different register and address sizes. Maybe there is room for more > runtime optimizations, we never looked in that details as -i386 still > works fine. And, if you are on 32-bit host (see below) - but we aren't, > qemu-system-x86_64 hurts even more. > > > > > The thing is: x86_64 becomes the only x86 platform these days, or at > > least the MAIN platform. > > I know, and I'm telling everyone. Still, too many crazy people keep on > installing 32-bit distros or even 32-bit kernels. Maybe x64-32 will > improve this. It is quite depressing that 32-bit still accounts for 55% of deployed Fedora installs: http://smolt.fedoraproject.org/static/stats/stats.html That said, a year ago it was even worse with 32-bit up in 70% region Daniel -- |: http://berrange.com -o- http://www.flickr.com/photos/dberrange/ :| |: http://libvirt.org -o- http://virt-manager.org :| |: http://autobuild.org -o- http://search.cpan.org/~danberr/ :| |: http://entangle-photo.org -o- http://live.gnome.org/gtk-vnc :| ^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [Qemu-devel] qemu-system-i386 vs qemu-system-x86_64 ? 2012-09-14 10:20 ` Daniel P. Berrange @ 2012-09-14 10:32 ` Jan Kiszka 0 siblings, 0 replies; 11+ messages in thread From: Jan Kiszka @ 2012-09-14 10:32 UTC (permalink / raw) To: Daniel P. Berrange; +Cc: Michael Tokarev, qemu-devel On 2012-09-14 12:20, Daniel P. Berrange wrote: > On Fri, Sep 14, 2012 at 12:12:43PM +0200, Jan Kiszka wrote: >> On 2012-09-14 12:03, Michael Tokarev wrote: >>> On 14.09.2012 14:00, Jan Kiszka wrote: >>> [] >>>> The major difference in qemu-system-i386 vs. qemu-system-x86_64 is on >>>> the TCG side: We measured noticeable performance benefits when running >>>> 32/16 bit OSes against qemu-system-i386 vs. using qemu-system-x86_64. I >>>> don't have numbers at hand, but colleagues decided to use the 32-bit >>>> version for that reason (when no KVM is available). >>> >>> Interesting. Maybe someone should look at the difference on TCG side >>> and merge interesting bits from i386 to x86_64... :) >> >> I suppose the difference - for our use cases at least - lies in the >> different register and address sizes. Maybe there is room for more >> runtime optimizations, we never looked in that details as -i386 still >> works fine. And, if you are on 32-bit host (see below) - but we aren't, >> qemu-system-x86_64 hurts even more. >> >>> >>> The thing is: x86_64 becomes the only x86 platform these days, or at >>> least the MAIN platform. >> >> I know, and I'm telling everyone. Still, too many crazy people keep on >> installing 32-bit distros or even 32-bit kernels. Maybe x64-32 will >> improve this. > > It is quite depressing that 32-bit still accounts for 55% of deployed > Fedora installs: > > http://smolt.fedoraproject.org/static/stats/stats.html > > That said, a year ago it was even worse with 32-bit up in 70% region There is a nice comment by Steven that I pinned on my wall, the last paragraph text-marked: http://lkml.indiana.edu/hypermail/linux/kernel/1206.1/00445.html. These days, I prefer to just point people to that printout instead of arguing. Didn't help yet, unfortunately, to convince our corporate VPN vendor to finally support 64-bit with his proprietary clients. Maybe because they didn't visit my office yet. The problem is also that some distros default the download to 32-bit when asking for a desktop, e.g. Ubuntu or OpenSUSE. Kudos to Fedora for not doing this. Jan -- Siemens AG, Corporate Technology, CT RTC ITP SDP-DE Corporate Competence Center Embedded Linux ^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [Qemu-devel] qemu-system-i386 vs qemu-system-x86_64 ? 2012-09-14 10:12 ` Jan Kiszka 2012-09-14 10:20 ` Daniel P. Berrange @ 2012-09-14 10:39 ` Peter Maydell 1 sibling, 0 replies; 11+ messages in thread From: Peter Maydell @ 2012-09-14 10:39 UTC (permalink / raw) To: Jan Kiszka; +Cc: Michael Tokarev, qemu-devel On 14 September 2012 11:12, Jan Kiszka <jan.kiszka@siemens.com> wrote: > On 2012-09-14 12:03, Michael Tokarev wrote: >> The thing is: x86_64 becomes the only x86 platform these days, or at >> least the MAIN platform. > > I know, and I'm telling everyone. Still, too many crazy people keep on > installing 32-bit distros or even 32-bit kernels. Maybe x64-32 will > improve this. Personally I'm waiting for my distro to support seamless upgrade from 32 bit to 64 bit. With a little luck multiarch should make this possible in a reasonably clean way... -- PMM ^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [Qemu-devel] qemu-system-i386 vs qemu-system-x86_64 ? 2012-09-14 10:03 ` Michael Tokarev 2012-09-14 10:12 ` Jan Kiszka @ 2012-09-14 12:24 ` Aurelien Jarno 1 sibling, 0 replies; 11+ messages in thread From: Aurelien Jarno @ 2012-09-14 12:24 UTC (permalink / raw) To: Michael Tokarev; +Cc: Jan Kiszka, qemu-devel On Fri, Sep 14, 2012 at 02:03:58PM +0400, Michael Tokarev wrote: > On 14.09.2012 14:00, Jan Kiszka wrote: > [] > > The major difference in qemu-system-i386 vs. qemu-system-x86_64 is on > > the TCG side: We measured noticeable performance benefits when running > > 32/16 bit OSes against qemu-system-i386 vs. using qemu-system-x86_64. I > > don't have numbers at hand, but colleagues decided to use the 32-bit > > version for that reason (when no KVM is available). > > Interesting. Maybe someone should look at the difference on TCG side > and merge interesting bits from i386 to x86_64... :) Most of the code between i386 and x86_64 is basically the same. For improving TCG performances, the only interesting thing to merge from i386 to x86_64 would be the use 32-bit registers instead of 64-bit registers. Oh wait... -- Aurelien Jarno GPG: 1024D/F1BCDB73 aurelien@aurel32.net http://www.aurel32.net ^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [Qemu-devel] qemu-system-i386 vs qemu-system-x86_64 ? 2012-09-14 7:39 [Qemu-devel] qemu-system-i386 vs qemu-system-x86_64 ? Michael Tokarev 2012-09-14 9:33 ` Daniel P. Berrange @ 2012-09-14 19:29 ` Blue Swirl 1 sibling, 0 replies; 11+ messages in thread From: Blue Swirl @ 2012-09-14 19:29 UTC (permalink / raw) To: Michael Tokarev; +Cc: qemu-devel On Fri, Sep 14, 2012 at 7:39 AM, Michael Tokarev <mjt@tls.msk.ru> wrote: > What's the difference between the two except that the > latter adds some more instructions (actually whole new > subsytem) to the former? Why do we need -i386, what > -x86_64 does not do which does -i386? i386 should not allow executing x86_64 code or using other 64 bit features but raise exceptions. 64 bit CPU models should not be available to i386 emulator. Physical memory is limited to PAE maximum for i386. We could also let x86_64 diverge from i386 and remove legacy devices to emulate a modern legacy free system while keeping i386 closer to 1990s machines, though this would be mainly a linkage issue. > > Thanks, > > /mjt > ^ permalink raw reply [flat|nested] 11+ messages in thread
end of thread, other threads:[~2012-09-14 19:43 UTC | newest] Thread overview: 11+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2012-09-14 7:39 [Qemu-devel] qemu-system-i386 vs qemu-system-x86_64 ? Michael Tokarev 2012-09-14 9:33 ` Daniel P. Berrange 2012-09-14 9:39 ` Michael Tokarev 2012-09-14 10:00 ` Jan Kiszka 2012-09-14 10:03 ` Michael Tokarev 2012-09-14 10:12 ` Jan Kiszka 2012-09-14 10:20 ` Daniel P. Berrange 2012-09-14 10:32 ` Jan Kiszka 2012-09-14 10:39 ` Peter Maydell 2012-09-14 12:24 ` Aurelien Jarno 2012-09-14 19:29 ` Blue Swirl
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for NNTP newsgroup(s).