posted Feb 2, 2016, 10:45 PM by Hyeonggyu Kim   [ updated Jan 11, 2017, 7:37 PM ]

MofySim: Mobile Full-System Simulation Framework


MofySim consists of a simulated mobile system, a simulated server system, a simulated Ethernet, an architectural statistics file, a system configuration file, and converters for analyzing the energy consumption. MofySim includes an enhanced gem5 simulator with source codes, Android and Linux Kernel images for a mobile system, embedded ARM Linux and Kernel images for a server system, energy converter tools, and McPAT configuration files. MofySim provides the configuration of network conditions and power models for CPU/caches, DRAM, network interfaces, and display.

The below paper shows the detailed information and examples.
  • Minho Ju, Hyeonggyu Kim, and Soontae Kim, MofySim: A Mobile Full System Simulation Framework for Energy Consumption and Performance Analysis, IEEE International Symposium on Performance Analysis of Systems and Software (ISPASS'16), Uppsala, Sweden, April 17-19, 2016.


Mobile Full System Simulation Configuration

 Type Simulation    Nexus 5
  300Mhz ∼ 2.26GHz quad-core CMP, ARM ISAs, out of order, tournament branch predictor, 4,096 BTB entries, 64 reorfer buffer, 32 fetch queue  300Mhz ∼ 2.26GHz quad-core Krait 400, 11 stage integer pipeline with 3-way decode, 4-way out-of-order speculative issue superscalar execution, 7 execution ports, Pipelined VFPv4, 128-bit wide NEON 
 GPU - Adreno 330, 450 MHz 
 Caches L1 I/D-cache: 16kB, 4-way, private, 64B block size, LRU, 4 mshrs, 6 hit latency L2 cache: 2MB, 8-way, shared, 64B block size, random, 20 mshrs, 44 hit latency  L0 I/D-cache: 4kB direct mapped, L1 I/D-cache: 16kB, 4-way L2 cache: 2MB, 8-way 
 DRAM LPDDR3 800MHz, 2GB, Dual-channel, 32-bit bus width, 8 banks per rank, 4kB row buffer size, 1 rank per channel  LPDDR3 800MHz, 2GB, Dual-channel, 32-bit bus width (12.8GBps) 
 TLB I-TLB: ArmTLB type, 32 entry, D-TLB: ArmTLB type, 32 entry  I-TLB: 32 entry, D-TLB: 32 entry 
 Display Full HD 1920 x 1080 px  Full HD 1920 x 1080 px (443ppi) 
 HPM 28nm technology  28nm technology 
 Platform Android Jelly Bean 4.1, Linux Kernel 3.14  Android Kitkat 4.4, Linux Kernel 3.4 


For funding purposes, we need to know who uses MofySim. To obtain a copy, please email Hyeonggyu Kim ( with your name, affiliation, and GitLab account.


 |- MofySim/
   | - Binary/
     | - gem5/: gem5 executable binaries
       | - build/ARM/binaries/: kernel images, Android images, embedded Linux Server images, etc.
     | - McPAT/: McPAT executable binary, converter tools for CPU power
     | - Tools/: gem5 stats analyzers, power anlayzer of McPAT results
   | - Source/
     | - Android/: devices/ source codes for ARM board configurations
     | - gem5/: enhanced gem5 simulator and shell scripts for executing enhanced gem5 simulation
       | - configs/example/: configuration files for two simulated systems
       | - scripts/: script files for executing benchmarks such as BBench
       | - src/: main modified gem5 source codes
       | ...
     | - kernel/linux-arm-arch-gem5/: network-enable Linux Kernel source codes
     | - McPAT/: orginal (M)ulti(c)ore (P)ower, (A)rea, and (T)iming source codes (version 1.2)
     | - Tools/: gem5 stats analyzers, power anlayzer of McPAT results

1-1 of 1