Make dex2oat heap size product configurable [build]

Bug: 15919420
Change-Id: If92318a6e3d5b9c8c6a2d08a3371386fa5ad8f45
This commit is contained in:
Brian Carlstrom 2014-07-08 10:35:29 -07:00
parent 979d578ee4
commit cffe289dc6
4 changed files with 23 additions and 2 deletions

View file

@ -239,6 +239,11 @@ $(call add-clean-step, rm -rf $(HOST_OUT_INTERMEDIATES))
# Change ro.zygote for core_64_bit.mk from zygote32_64 to zygote64_32
$(call add-clean-step, rm -rf $(PRODUCT_OUT)/root/default.prop)
$(call add-clean-step, rm -rf $(PRODUCT_OUT)/recovery/root/default.prop)
# Adding dalvik.vm.dex2oat-Xms, dalvik.vm.dex2oat-Xmx
# dalvik.vm.image-dex2oat-Xms, and dalvik.vm.image-dex2oat-Xmx
$(call add-clean-step, rm -rf $(PRODUCT_OUT)/root/default.prop)
$(call add-clean-step, rm -rf $(PRODUCT_OUT)/recovery/root/default.prop)
# ************************************************
# NEWER CLEAN STEPS MUST BE AT THE END OF THE LIST
# ************************************************

View file

@ -27,6 +27,15 @@ else
LIBART_IMG_TARGET_BASE_ADDRESS := 0x70000000
endif
define get-product-property
$(strip $(patsubst $(1)=%,%,$(filter $(1)=%,$(PRODUCT_PROPERTY_OVERRIDES))))
endef
DEX2OAT_IMAGE_XMS := $(get-product-property dalvik.vm.image-dex2oat-Xms)
DEX2OAT_IMAGE_XMX := $(get-product-property dalvik.vm.image-dex2oat-Xmx)
DEX2OAT_XMS := $(get-product-property dalvik.vm.dex2oat-Xms)
DEX2OAT_XMX := $(get-product-property dalvik.vm.dex2oat-Xmx)
########################################################################
# The full system boot classpath
@ -68,7 +77,7 @@ define dex2oat-one-file
$(hide) rm -f $(2)
$(hide) mkdir -p $(dir $(2))
$(hide) $(DEX2OATD) \
--runtime-arg -Xms64m --runtime-arg -Xmx64m \
--runtime-arg $(DEX2OAT_XMS) --runtime-arg $(DEX2OAT_XMX) \
--boot-image=$(PRIVATE_DEX_PREOPT_IMAGE_LOCATION) \
--dex-file=$(1) \
--dex-location=$(PRIVATE_DEX_LOCATION) \

View file

@ -43,7 +43,8 @@ $($(my_2nd_arch_prefix)DEFAULT_DEX_PREOPT_BUILT_IMAGE_FILENAME) : $(LIBART_TARGE
@echo "target dex2oat: $@ ($?)"
@mkdir -p $(dir $@)
@mkdir -p $(dir $($(PRIVATE_2ND_ARCH_VAR_PREFIX)LIBART_TARGET_BOOT_OAT_UNSTRIPPED))
$(hide) $(DEX2OATD) --runtime-arg -Xms256m --runtime-arg -Xmx256m --image-classes=$(PRELOADED_CLASSES) \
$(hide) $(DEX2OATD) --runtime-arg $(DEX2OAT_IMAGE_XMS) --runtime-arg $(DEX2OAT_IMAGE_XMX) \
--image-classes=$(PRELOADED_CLASSES) \
$(addprefix --dex-file=,$(LIBART_TARGET_BOOT_DEX_FILES)) \
$(addprefix --dex-location=,$(LIBART_TARGET_BOOT_DEX_LOCATIONS)) \
--oat-symbols=$($(PRIVATE_2ND_ARCH_VAR_PREFIX)LIBART_TARGET_BOOT_OAT_UNSTRIPPED) \

View file

@ -22,4 +22,10 @@ PRODUCT_PACKAGES += \
dex2oat \
oatdump
PRODUCT_DEFAULT_PROPERTY_OVERRIDES += \
dalvik.vm.image-dex2oat-Xms=64m \
dalvik.vm.image-dex2oat-Xmx=64m \
dalvik.vm.dex2oat-Xms=64m \
dalvik.vm.dex2oat-Xmx=512m \
include $(SRC_TARGET_DIR)/product/runtime_common.mk