What's the bottleneck limiting adb-server to 16 emulators

93 views
Skip to first unread message

Hamilton Turner

unread,
Apr 21, 2012, 11:34:43 AM4/21/12
to Android Contributors
Hey all,

I'm trying to understand / hopefully address this limitation in some
way. I've got a few reasonably-powered computers available, and I've
build the SDK on them. They run 16 emulators w/no problems, although
interestingly emulators 1-10 take about 8+-5% CPU, 10-14 take 10+-5%,
and emulators 15-16 take 99% CPU continually. Also, emulators 1-14 are
consistently at 250+-50MB of memory, while 15-16 are taking up 2-3Gb?

My thoughts on increasing this limitation are
1 - It's an arbitrarily imposed limit:
modify the code to increase this or make it a build parameter. If I
have a machine that can support 32 emulators, I'd like to build an adb
that would allow that. I've made minor modifications to
ROOT/external/qemu/android/qemu-setup.c
ROOT/system/core/adb/transport_local.c
that I'm currently testing
2 - It's a hard limit:
Figure out how to modify the make so that I can simultaneously run
multiple adb-servers on different base ports.

Any thoughts would be appreciated.

Cheers,
Hamilton

David Turner

unread,
May 19, 2012, 1:59:04 PM5/19/12
to android...@googlegroups.com
It's an arbitrary limit, I can't comment on why the emulators are taking that much CPU/RAM for you, but it should be easy to increase the limits in both the emulator and ADB.
Reply all
Reply to author
Forward
0 new messages