Closed
Bug 1001482
Opened 10 years ago
Closed 10 years ago
run performance benchmarks on OS X SSD machine
Categories
(Infrastructure & Operations :: RelOps: General, task)
Tracking
(Not tracked)
RESOLVED
WONTFIX
People
(Reporter: arich, Assigned: dividehex)
References
Details
We want to run some performance benchmarks on the OS X windows machine with an SSD to make sure that performance is stable and as expected. Taras suggested using http://freecode.com/projects/fio since it's cross platform.
Assignee | ||
Comment 1•10 years ago
|
||
Fio seems like a nice tool for benchmarking but request is not well defined. Fio is a framework for building benchmarking tests. We will need far more detail as to the benchmarks you are looking for here. Could you provide a defined job file for this? http://git.kernel.dk/?p=fio.git;a=blob_plain;f=HOWTO;hb=HEAD
Reporter | ||
Comment 2•10 years ago
|
||
Based on info from bug 1001481 I set up a 70/30 profile to run: ; write speed at 70/30 [8k7030test] ; OS X doesn't support mutexes, so we use threading thread directory=/tmp/fio direct=1 rw=randrw refill_buffers norandommap randrepeat=0 ioengine=posixaio bs=8k rwmixread=70 iodepth=16 numjobs=16 runtime=60 group_reporting size=512m Unfortunately it looks like the posixaio engine is non-functional on OSX (and the windows and linuxaio engines obviously don't work since it's the wrong type of system): # fio 8k7030test.fio 8k7030test: (g=0): rw=randrw, bs=8K-8K/8K-8K/8K-8K, ioengine=posixaio, iodepth=16 ... fio-2.1.7 Starting 16 threads 8k7030test: Laying out IO file(s) (1 file(s) / 512MB) 8k7030test: Laying out IO file(s) (1 file(s) / 512MB) 8k7030test: Laying out IO file(s) (1 file(s) / 512MB) 8k7030test: Laying out IO file(s) (1 file(s) / 512MB) 8k7030test: Laying out IO file(s) (1 file(s) / 512MB) 8k7030test: Laying out IO file(s) (1 file(s) / 512MB) 8k7030test: Laying out IO file(s) (1 file(s) / 512MB) 8k7030test: Laying out IO file(s) (1 file(s) / 512MB) 8k7030test: Laying out IO file(s) (1 file(s) / 512MB) 8k7030test: Laying out IO file(s) (1 file(s) / 512MB) 8k7030test: Laying out IO file(s) (1 file(s) / 512MB) 8k7030test: Laying out IO file(s) (1 file(s) / 512MB) 8k7030test: Laying out IO file(s) (1 file(s) / 512MB) 8k7030test: Laying out IO file(s) (1 file(s) / 512MB) 8k7030test: Laying out IO file(s) (1 file(s) / 512MB) 8k7030test: Laying out IO file(s) (1 file(s) / 512MB) fio: pid=7683, err=-1/file:engines/posixaio.c:213, func=xfer, error=Unknown error: -1 fio: pid=8451, err=-1/file:engines/posixaio.c:213, func=xfer, error=Unknown error: -1 fio: pid=8707, err=-1/file:engines/posixaio.c:213, func=xfer, error=Unknown error: -1 fio: pid=6403, err=-1/file:engines/posixaio.c:213, func=xfer, error=Unknown error: -1 fio: pid=8195, err=-1/file:engines/posixaio.c:213, func=xfer, error=Unknown error: -1 fio: pid=6659, err=-1/file:engines/posixaio.c:213, func=xfer, error=Unknown error: -1 fio: pid=4867, err=-1/file:engines/posixaio.c:213, func=xfer, error=Unknown error: -1 fio: pid=6915, err=-1/file:engines/posixaio.c:213, func=xfer, error=Unknown error: -1 fio: pid=5635, err=-1/file:engines/posixaio.c:213, func=xfer, error=Unknown error: -1 fio: pid=7427, err=-1/file:engines/posixaio.c:213, func=xfer, error=Unknown error: -1 fio: pid=6147, err=-1/file:engines/posixaio.c:213, func=xfer, error=Unknown error: -1 fio: pid=5891, err=-1/file:engines/posixaio.c:213, func=xfer, error=Unknown error: -1 fio: pid=7171, err=-1/file:engines/posixaio.c:213, func=xfer, error=Unknown error: -1 fio: pid=5123, err=-1/file:engines/posixaio.c:213, func=xfer, error=Unknown error: -1 fio: pid=7939, err=-1/file:engines/posixaio.c:213, func=xfer, error=Unknown error: -1 fio: pid=5379, err=-1/file:engines/posixaio.c:213, func=xfer, error=Unknown error: -1 Assertion failed: (pool), function sfree, file smalloc.c, line 347. fio(653,0x10eb1d000) malloc: *** error for object 0x7f9081402920: pointer being freed was not allocated *** set a breakpoint in malloc_error_break to debug Abort trap: 6 And interestingly, if you try to run the job multiple times in a row, you start getting the error: error: maximum number of jobs (4) reached. When it ran 16 just fine the first time. Rebooting the system lets you run 16 jobs again, so I suspect something some resource is being tied up with the failure.
Depends on: 992364
Reporter | ||
Comment 3•10 years ago
|
||
I tried running this on my personal laptop (mavericks, not lion) just to check and see if it was something weird with the mini, and I got the same errors. Oh, and an added note on the mini, if you run it again with 4 jobs (by bumping down the number in the config), it again fails and then will only let you run with ONE job. Definitely issues with the code.
Reporter | ||
Comment 4•10 years ago
|
||
This machine is getting put back into the production pool with its original disk.
Status: NEW → RESOLVED
Closed: 10 years ago
Resolution: --- → WONTFIX
You need to log in
before you can comment on or make changes to this bug.
Description
•