Porting filesystem benchmarking tool iozone on android
来源:互联网 发布:汽配查询软件 编辑:程序博客网 时间:2024/06/16 12:18
转载请注明来源, please acknowledge to the origin post when repost: http://blog.csdn.net/zhangjing_tju
iozone
iozone is a filesystem benchmark tool. The benchmark generates and measures a variety of file operations. Iozone has been ported to many machines and runs under many operating systems.
Benchmark Features:
- ANSII C source
- POSIX async I/O
- Mmap() file I/O
- Normal file I/O
- Single stream measurement
- Multiple stream measurement
- Distributed fileserver measurements (Cluster)
- POSIX pthreads
- Multi-process measurement
- Excel importable output for graph generation
- Latency plots
- 64bit compatible source
- Large file compatible
- Stonewalling in throughput tests to eliminate straggler effects
- Processor cache size configurable
- Selectable measurements with fsync, OSYNC
- Builds for: AIX, BSDI, HP-UX, IRIX, FreeBSD, Linux, OpenBSD, NetBSD, OSFV3, OSFV4, OSFV5, SCO OpenServer, Solaris, MAC OS X, Windows (95/98/Me/NT/2K/XP)
android patch to iozone
diff --git a/src/jni/Android.mk b/src/jni/Android.mknew file mode 100644index 0000000..250669a--- /dev/null+++ b/src/jni/Android.mk@@ -0,0 +1,18 @@+LOCAL_PATH := $(call my-dir)++include $(CLEAR_VARS)++LOCAL_MODULE := iozone++LOCAL_SRC_FILES := iozone.c libbif.c++LOCAL_CFLAGS := -c -O3 -Dunix -DHAVE_ANSIC_C -DHAVE_PREAD \+ -DNAME='"linux-arm"' -DLINUX_ARM \+ -Dlinux -Dandroid+#-D_LARGEFILE64_SOURCE -DASYNC_IO++#LOCAL_LDLIBS := -lrt -lpthread+LOCAL_SHARED_LIBRARIES := rt pthread++include $(BUILD_EXECUTABLE)+diff --git a/src/jni/Application.mk b/src/jni/Application.mknew file mode 100644index 0000000..ed6e6d1--- /dev/null+++ b/src/jni/Application.mk@@ -0,0 +1,2 @@+APP_ABI := armeabi-v7a #armeabi+APP_PLATFORM := android-21diff --git a/src/jni/iozone.c b/src/jni/iozone.cindex 1bbf206..0958e90 100644--- a/src/jni/iozone.c+++ b/src/jni/iozone.c@@ -308,6 +308,18 @@ THISVERSION, #endif #endif+#if defined(android)+#ifndef O_RSYNC+#define O_RSYNC O_SYNC+#endif++__attribute__((weak)) int pthread_setaffinity_np(pthread_t thread, size_t cpusetsize,+ const cpu_set_t *cpuset)+{+ return sched_setaffinity(pthread_gettid_np(thread), cpusetsize, cpuset);+}+#endif+ #if ((defined(solaris) && defined(__LP64__)) || defined(__s390x__)) /* If we are building for 64-bit Solaris, all functions that return pointers * must be declared before they are used; otherwise the compiler will assumediff --git a/src/jni/libbif.c b/src/jni/libbif.cindex 890e226..a78f80b 100644--- a/src/jni/libbif.c+++ b/src/jni/libbif.c@@ -17,7 +17,7 @@ #include <sys/types.h> #include <stdio.h> #include <sys/file.h>-#if defined(__AIX__) || defined(__FreeBSD__) || defined(__DragonFly__)+#if defined(__AIX__) || defined(__FreeBSD__) || defined(__DragonFly__) || defined(android) #include <fcntl.h> #else #include <sys/fcntl.h>
0 0
- Porting filesystem benchmarking tool iozone on android
- Android Porting On Real Target
- Android Porting On Real Target
- Porting Wifi driver on Android
- Porting Android
- BT Porting on Wince
- porting gtk on arm
- WebPageTest: The little known but great webpage benchmarking tool
- iozone
- IOZONE
- iozone
- android filesystem
- android 性能测试iozone篇
- porting oprofile on mips board
- porting r70(on going)
- Porting openwrt on MT7688 Log
- Porting openwrt on MT7688 Log
- Android - porting MPTCP on android-x86-6.0-rc1 (some files may cause issues)
- AndroidStudio集成Genymotion(模拟器)
- JS、JSP省市区切换
- android防反编译
- ATM取款机模拟——数据结构课设
- docker “FATA[0162] ... connection timed out" 错误改正方法
- Porting filesystem benchmarking tool iozone on android
- jquery 常用正则表达式验证
- android 项目中使用到的网络请求框架以及如何配置好接口URL
- how to use kvo with swift (如何在swift中使用kvo)
- java:Excel操作(poi)
- 23最大乘积子串
- 单元测试的过程
- WPF DEV控件格式化控件显示格式
- Android activity 生命周期