08c7228c50f8b27acba312c4d2f0c07d0ab6a06b |
|
03-Jan-2013 |
Tom Knych <thomaswk@google.com> |
x86-kvm: only sync SREGS when doing address translation cpu_synchronize_state is 10x or more expensive on AMD then on intel. This makes all nand read/writes extremely slow (eg: mounting /system takes over a minute when KVM is enabled on AMD). Looking at hw/goldfish* all callers of cpu_synchronize_state want to do is translate virtual to physical addresses. You can do that with 1 ioctl (KVM_GET_SREGS). Performance on AMD is significant improved (matching intel) and intel is not affected. Converted all callers of cpu_synchronize_state in hw/goldfish-* to sync over only KVM_GET_SREGS when running in KVM mode. Change-Id: Id15c4e99c0f541527684fba23d639c9dee3525c6 Signed-off-by: Tom Knych <thomaswk@google.com>
/external/qemu/hw/goldfish_trace.c
|
406a59bd0a2e7a38cd840a5c08602e3a36bd2df8 |
|
12-May-2011 |
David 'Digit' Turner <digit@android.com> |
trace.h: rename to trace-android.h This is done to allow for future integration of the upstream auto-generated "trace.h" header file. Change-Id: I9d1bba3320d9e8acfd7359540d3ed6695773061e
/external/qemu/hw/goldfish_trace.c
|
d4d688e926097faba7fd3717d1c0d3f296bdb526 |
|
26-Apr-2011 |
David 'Digit' Turner <digit@android.com> |
New goldfish_pipe virtual device. This adds a new virtual hardware device named "goldfish_pipe" used to implement a very fast communication channel between the guest system and the emulator. IMPORTANT: This depends on a special kernel driver, see: https://review.source.android.com/#change,22496 Usage from the guest is simply the following: fd = open("/dev/qemu_pipe", O_RDWR); const char* pipename = "pipe:<name>"; ret = write(fd, pipename, strlen(pipename)+1); if (ret < 0) { /* could not connect to service named <name> */ } /* now you can read()/write()/close() as a normal * file descriptor to exchange data with the service. */ In addition, this implements the following pipe services in the emulator: tcp:<port> tcp:<hostname>:<port> unix:<path> opengles The 'tcp:' and 'unix:' services simply redirect to a TCP or Unix socket on the host with minimal The 'opengles' service simply connects to tcp:locahost:22468 for now. We may change this to be more configurable in the future, but that's the port number used by the current experimental OpenGL ES hardware emulation host libraries / programs. Benchmarking with a simple ping-pong program shows that the guest <-> emulator can achieve a roundtrip bandwidth of 192 MB/s (on a 2.7 Ghz Xeon PC). Using the tcp: service to talk to a ping-pong server listening on localhost reaches 102 MB/s on the same machine, using a Unix socket reaches 140 MB/s. By contrast, using standard sockets in the guest reaches only 3.8 MB/s on the same machine (and requires special privileges from the application anyway).
/external/qemu/hw/goldfish_trace.c
|
335d2c1342bb887ac67f1f60cff795f0c06beaca |
|
21-Mar-2011 |
David 'Digit' Turner <digit@android.com> |
goldfish_trace: Hook with goldfish_pipe.h functions. Note that this is also forces tracing support during machine initialization. Measurements show that this doesn't have any significant impact on emulation performance. Change-Id: Ie32352659611531ce65ba2c95c5896e2421f509d
/external/qemu/hw/goldfish_trace.c
|
4e024bb4f5c8aa8b07459f7fbd65c35122127fd1 |
|
22-Sep-2010 |
David 'Digit' Turner <digit@android.com> |
Remove compiler warnings when building the emulator. This forces -Wall during the build. Note that this patch doesn't remove all warnings, but most of the remaining ones are from upstream anyway. Change-Id: I8808d8495e99866e156ce5780d2e3c305eab491f
/external/qemu/hw/goldfish_trace.c
|
b91980562344f6a3b719bfe4be007fa9406e585f |
|
10-Sep-2010 |
David Turner <digit@android.com> |
upstream: osdep changes + fix mingw build.
/external/qemu/hw/goldfish_trace.c
|
5389aa19033153c09556d1362a8b8a56abccb8f5 |
|
16-Feb-2010 |
Vladimir Chtchetkine <vchtchetkine@google.com> |
Merge memory checking from sandbox Change-id: Ibce845d0
/external/qemu/hw/goldfish_trace.c
|
5d8f37ad78fc66901af50c762029a501561f3b23 |
|
14-Sep-2009 |
David 'Digit' Turner <digit@google.com> |
Merge upstream QEMU 10.0.50 into the Android source tree. This change integrates many changes from the upstream QEMU sources. Its main purpose is to enable correct ARMv6 and ARMv7 support to the Android emulator. Due to the nature of the upstream code base, this unfortunately also required changes to many other parts of the source. Note that to ensure easier integrations in the future, some source files and directories that have heavy Android-specific customization have been renamed with an -android suffix. The original files are still there for easier integration tracking, but *never* compiled. For example: net.c net-android.c qemu-char.c qemu-char-android.c slirp/ slirp-android/ etc... Tested on linux-x86, darwin-x86 and windows host machines.
/external/qemu/hw/goldfish_trace.c
|
e3ea32ffa04468eddaf9c6ce2d36090f7bf43e49 |
|
19-May-2009 |
Jack Veenstra <veenstra@android.com> |
Add support for new trace records for native (JNI) calls. This change adds new trace record types for entering (and exiting) native code from Java code. There is a corresponding change in the Dalvik interpreter to generate these trace records.
/external/qemu/hw/goldfish_trace.c
|
9980bbb9965ee2df42f94aafa817e91835dad406 |
|
05-May-2009 |
Jack Veenstra <veenstra@android.com> |
Add support for tracing Java method entry/exit to qemu. This is part of a larger change to add support for tracing Java methods. There is also a kernel change and a small change to the Dalvik interpreter that will be checked in separately. There used to be support for tracing Java methods but it relied on trapping every store and checking if the store address matched a special "magic" region (and that stopped working because we can no longer trap on loads and stores). The new approach uses a memory-mapped page to catch stores to just that page.
/external/qemu/hw/goldfish_trace.c
|
8b23a6c7e1aee255004dd19098d4c2462b61b849 |
|
04-Mar-2009 |
The Android Open Source Project <initial-contribution@android.com> |
auto import from //depot/cupcake/@135843
/external/qemu/hw/goldfish_trace.c
|
f721e3ac031f892af46f255a47d7f54a91317b30 |
|
04-Mar-2009 |
The Android Open Source Project <initial-contribution@android.com> |
auto import from //depot/cupcake/@135843
/external/qemu/hw/goldfish_trace.c
|
c27f813900a3c114562efbb8df1065e94766fc48 |
|
11-Feb-2009 |
The Android Open Source Project <initial-contribution@android.com> |
auto import from //branches/cupcake/...@130745
/external/qemu/hw/goldfish_trace.c
|
55f4e4a5ec657a017e3bf75299ad71fd1c968dd3 |
|
21-Oct-2008 |
The Android Open Source Project <initial-contribution@android.com> |
Initial Contribution
/external/qemu/hw/goldfish_trace.c
|