* using fio client on 64-bit machine with fio server on 32-bit machine
@ 2014-06-27 7:00 Frank D'Arcy
2014-06-27 16:47 ` Jens Axboe
0 siblings, 1 reply; 7+ messages in thread
From: Frank D'Arcy @ 2014-06-27 7:00 UTC (permalink / raw)
To: fio
Hi,
I've been playing around with fio (which is really great thanks)
with a view to testing hard disks on set-top boxes (which I don't have yet)
and as prep for this I created a test environment consisting of
2 x virtual machines running 32-bit ubuntu (using "hashicorp/precise32"
from vagrant cloud)
running on a 64-bit machine with ubuntu 12.04.
I started fio (v2.1.10) running in server mode on both virtual machines
as follows
$ fio --server=,8880
and launched 2 fio (v2.1.10) instances in client mode on the host 64-bit
machine,
$ fio --client=ip:127.0.0.1,8882 test.fio
$ fio --client=ip:127.0.0.1,8881 test.fio
where ports 8881 and 8882 are forwarded to port 8880 on each VM
The sample test.fio (below) runs for 25 seconds
but the values printed by the clients look garbled.
eg. runtime is a huge number ("runt= 107374182400000msec")
Same issue is seen when I switched to using latest fio from "git clone"
and the same issue is seen with all output formats (json, terse, normal)
I changed one of the virtual machines to 64-bit ubuntu (using
"hashicorp/precise64" from vagrant cloud)
and the client talking to the fio server on that VM gave the correct
results (eg. "runt= 25001msec")
while the client talking to the 32-bit ubuntu VM continued to show
garbled values.
So it looks like support is not there for client-server setups on
non-matching architectures ?
eg. 32-bit client to 64-bit server in this case,
and perhaps endianess differences would be a problem too? ( but I
haven't tried that )
Apologies if I've missed this issue raised elsewhere, I did a quick
search and found no mention of it.
It's not critical for us, as the simple workaround is to run fio
standalone on each set-top box
outputting results to a file and pulling the file back to a central
machine for parsing.
Just wanted to raise it if its unknown to you.
Thanks very much,
Frank
my test ....
[global]
;run for 25 seconds
runtime=25
time_based=1
;directory in which to create files
directory=.
size=1024k
log_avg_msec=500
[job1]
name=job1_stb1
description=Job1 Description
rw=read
blocksize=2
rate=1k
write_bw_log=job1_stb1
write_lat_log=job1_stb1
write_iops_log=job1_stb1
[job2]
name=job2_stb1
description=Job2 Description
rw=write
blocksize=2
rate=500
write_bw_log=job2_stb1
write_lat_log=job2_stb1
write_iops_log=job2_stb1
--
Frank D'Arcy
S3 Group Ltd. South County Business Park, Leopardstown, Dublin 18, Ireland
Visit S3 website: www.s3group.com
-----
The information contained in this e-mail and in any attachments is confidential and is designated solely for the attention of the intended recipient(s). If you are not an intended recipient, you must not use, disclose, copy, distribute or retain this e-mail or any part thereof. If you have received this e-mail in error, please notify the sender by return e-mail and delete all copies of this e-mail from your computer system(s). Please direct any additional queries to: communications@s3group.com. Thank You. Silicon and Software Systems Limited (S3 Group). Registered in Ireland no. 378073. Registered Office: South County Business Park, Leopardstown, Dublin 18.
^ permalink raw reply [flat|nested] 7+ messages in thread* Re: using fio client on 64-bit machine with fio server on 32-bit machine 2014-06-27 7:00 using fio client on 64-bit machine with fio server on 32-bit machine Frank D'Arcy @ 2014-06-27 16:47 ` Jens Axboe 2014-06-27 21:02 ` Jens Axboe 0 siblings, 1 reply; 7+ messages in thread From: Jens Axboe @ 2014-06-27 16:47 UTC (permalink / raw) To: Frank D'Arcy, fio On 2014-06-27 01:00, Frank D'Arcy wrote: > Hi, > I've been playing around with fio (which is really great thanks) > with a view to testing hard disks on set-top boxes (which I don't have yet) > and as prep for this I created a test environment consisting of > 2 x virtual machines running 32-bit ubuntu (using "hashicorp/precise32" > from vagrant cloud) > running on a 64-bit machine with ubuntu 12.04. > > I started fio (v2.1.10) running in server mode on both virtual machines > as follows > $ fio --server=,8880 > > and launched 2 fio (v2.1.10) instances in client mode on the host 64-bit > machine, > $ fio --client=ip:127.0.0.1,8882 test.fio > $ fio --client=ip:127.0.0.1,8881 test.fio > where ports 8881 and 8882 are forwarded to port 8880 on each VM > > The sample test.fio (below) runs for 25 seconds > but the values printed by the clients look garbled. > eg. runtime is a huge number ("runt= 107374182400000msec") > > Same issue is seen when I switched to using latest fio from "git clone" > and the same issue is seen with all output formats (json, terse, normal) > > I changed one of the virtual machines to 64-bit ubuntu (using > "hashicorp/precise64" from vagrant cloud) > and the client talking to the fio server on that VM gave the correct > results (eg. "runt= 25001msec") > while the client talking to the 32-bit ubuntu VM continued to show > garbled values. > > So it looks like support is not there for client-server setups on > non-matching architectures ? > eg. 32-bit client to 64-bit server in this case, > and perhaps endianess differences would be a problem too? ( but I > haven't tried that ) > > Apologies if I've missed this issue raised elsewhere, I did a quick > search and found no mention of it. > It's not critical for us, as the simple workaround is to run fio > standalone on each set-top box > outputting results to a file and pulling the file back to a central > machine for parsing. > Just wanted to raise it if its unknown to you. Any mix of 32 vs 64-bit and big vs little endian should work, all the data structures are sanitized across the wire. So if it doesn't work, then that is surely a bug! I'll take a look at this. -- Jens Axboe ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: using fio client on 64-bit machine with fio server on 32-bit machine 2014-06-27 16:47 ` Jens Axboe @ 2014-06-27 21:02 ` Jens Axboe 2014-06-30 11:09 ` Frank D'Arcy 0 siblings, 1 reply; 7+ messages in thread From: Jens Axboe @ 2014-06-27 21:02 UTC (permalink / raw) To: Frank D'Arcy, fio On 06/27/2014 10:47 AM, Jens Axboe wrote: > On 2014-06-27 01:00, Frank D'Arcy wrote: >> Hi, >> I've been playing around with fio (which is really great thanks) >> with a view to testing hard disks on set-top boxes (which I don't have >> yet) >> and as prep for this I created a test environment consisting of >> 2 x virtual machines running 32-bit ubuntu (using "hashicorp/precise32" >> from vagrant cloud) >> running on a 64-bit machine with ubuntu 12.04. >> >> I started fio (v2.1.10) running in server mode on both virtual machines >> as follows >> $ fio --server=,8880 >> >> and launched 2 fio (v2.1.10) instances in client mode on the host 64-bit >> machine, >> $ fio --client=ip:127.0.0.1,8882 test.fio >> $ fio --client=ip:127.0.0.1,8881 test.fio >> where ports 8881 and 8882 are forwarded to port 8880 on each VM >> >> The sample test.fio (below) runs for 25 seconds >> but the values printed by the clients look garbled. >> eg. runtime is a huge number ("runt= 107374182400000msec") >> >> Same issue is seen when I switched to using latest fio from "git clone" >> and the same issue is seen with all output formats (json, terse, normal) >> >> I changed one of the virtual machines to 64-bit ubuntu (using >> "hashicorp/precise64" from vagrant cloud) >> and the client talking to the fio server on that VM gave the correct >> results (eg. "runt= 25001msec") >> while the client talking to the 32-bit ubuntu VM continued to show >> garbled values. >> >> So it looks like support is not there for client-server setups on >> non-matching architectures ? >> eg. 32-bit client to 64-bit server in this case, >> and perhaps endianess differences would be a problem too? ( but I >> haven't tried that ) >> >> Apologies if I've missed this issue raised elsewhere, I did a quick >> search and found no mention of it. >> It's not critical for us, as the simple workaround is to run fio >> standalone on each set-top box >> outputting results to a file and pulling the file back to a central >> machine for parsing. >> Just wanted to raise it if its unknown to you. > > Any mix of 32 vs 64-bit and big vs little endian should work, all the > data structures are sanitized across the wire. So if it doesn't work, > then that is surely a bug! I'll take a look at this. http://git.kernel.dk/?p=fio.git;a=commit;h=819db5f5009742975cfdd036440522bd45b86fe7 this should make it behave better. Let me know if there are still issues with 32 vs 64 bit client/server. -- Jens Axboe ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: using fio client on 64-bit machine with fio server on 32-bit machine 2014-06-27 21:02 ` Jens Axboe @ 2014-06-30 11:09 ` Frank D'Arcy 2014-06-30 14:52 ` Jens Axboe 0 siblings, 1 reply; 7+ messages in thread From: Frank D'Arcy @ 2014-06-30 11:09 UTC (permalink / raw) To: Jens Axboe, fio Hi Jens, thanks for getting back to me. I've rebuilt with the latest but I still see problems with the numbers. I do see one improvement, the "% done" printed while the test is in progress now increases nicely from 0% to 100% whereas before it would jump around to seemingly random values between 0% to 100% I wonder is it picking the wrong set of numbers to print in some cases. eg. from a test with 2 jobs that runs for 23 seconds I faound the following in normal output ... when run standalone on a 32-bit VM I see this for a "rw=randread" job > read : io=47106B, bw=2047B/s, iops=1023, runt= 23001msec whereas when the same test is run from 64-bit client to 32-bit server I see this for the same job > trim: io=98789GB, bw=1000/s, iops=0, runt=98784247808000msec so it says "trim" where it should say "read" and for the 2nd job which is "rw=write" when run standalone on a 32-bit VM I see this > write: io=34502B, bw=1500B/s, iops=750, runt= 23001msec whereas when the same test is run from 64-bit client to 32-bit server I see this for the same job > read : io=148185GB, bw=1500/s, iops=750, runt=98788542775296msec so it says "read" where it should say "write" In the same test run, the following results are identical when run both ways ... > > Run status group 0 (all jobs): > READ: io=46KB, aggrb=1KB/s, minb=1KB/s, maxb=1KB/s, mint=23001msec, > maxt=23001msec > WRITE: io=33KB, aggrb=1KB/s, minb=1KB/s, maxb=1KB/s, mint=23001msec, > maxt=23001msec so these results look correct. All the above problems are only seen when run from 64-bit client to 32-bit server, no problems seen when running standalone, and no problems seen when running 64-bit client to 64-bit server. Thanks, Frank On 27/06/2014 22:02, Jens Axboe wrote: > On 06/27/2014 10:47 AM, Jens Axboe wrote: >> On 2014-06-27 01:00, Frank D'Arcy wrote: >>> Hi, >>> I've been playing around with fio (which is really great thanks) >>> with a view to testing hard disks on set-top boxes (which I don't have >>> yet) >>> and as prep for this I created a test environment consisting of >>> 2 x virtual machines running 32-bit ubuntu (using "hashicorp/precise32" >>> from vagrant cloud) >>> running on a 64-bit machine with ubuntu 12.04. >>> >>> I started fio (v2.1.10) running in server mode on both virtual machines >>> as follows >>> $ fio --server=,8880 >>> >>> and launched 2 fio (v2.1.10) instances in client mode on the host 64-bit >>> machine, >>> $ fio --client=ip:127.0.0.1,8882 test.fio >>> $ fio --client=ip:127.0.0.1,8881 test.fio >>> where ports 8881 and 8882 are forwarded to port 8880 on each VM >>> >>> The sample test.fio (below) runs for 25 seconds >>> but the values printed by the clients look garbled. >>> eg. runtime is a huge number ("runt= 107374182400000msec") >>> >>> Same issue is seen when I switched to using latest fio from "git clone" >>> and the same issue is seen with all output formats (json, terse, normal) >>> >>> I changed one of the virtual machines to 64-bit ubuntu (using >>> "hashicorp/precise64" from vagrant cloud) >>> and the client talking to the fio server on that VM gave the correct >>> results (eg. "runt= 25001msec") >>> while the client talking to the 32-bit ubuntu VM continued to show >>> garbled values. >>> >>> So it looks like support is not there for client-server setups on >>> non-matching architectures ? >>> eg. 32-bit client to 64-bit server in this case, >>> and perhaps endianess differences would be a problem too? ( but I >>> haven't tried that ) >>> >>> Apologies if I've missed this issue raised elsewhere, I did a quick >>> search and found no mention of it. >>> It's not critical for us, as the simple workaround is to run fio >>> standalone on each set-top box >>> outputting results to a file and pulling the file back to a central >>> machine for parsing. >>> Just wanted to raise it if its unknown to you. >> Any mix of 32 vs 64-bit and big vs little endian should work, all the >> data structures are sanitized across the wire. So if it doesn't work, >> then that is surely a bug! I'll take a look at this. > http://git.kernel.dk/?p=fio.git;a=commit;h=819db5f5009742975cfdd036440522bd45b86fe7 > > this should make it behave better. Let me know if there are still issues > with 32 vs 64 bit client/server. > -- Frank D'Arcy www.s3group.com ----- The information contained in this e-mail and in any attachments is confidential and is designated solely for the attention of the intended recipient(s). If you are not an intended recipient, you must not use, disclose, copy, distribute or retain this e-mail or any part thereof. If you have received this e-mail in error, please notify the sender by return e-mail and delete all copies of this e-mail from your computer system(s). Please direct any additional queries to: communications@s3group.com. Thank You. Silicon and Software Systems Limited (S3 Group). Registered in Ireland no. 378073. Registered Office: South County Business Park, Leopardstown, Dublin 18. ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: using fio client on 64-bit machine with fio server on 32-bit machine 2014-06-30 11:09 ` Frank D'Arcy @ 2014-06-30 14:52 ` Jens Axboe 2014-06-30 17:06 ` Frank D'Arcy 0 siblings, 1 reply; 7+ messages in thread From: Jens Axboe @ 2014-06-30 14:52 UTC (permalink / raw) To: Frank D'Arcy, fio On 06/30/2014 05:09 AM, Frank D'Arcy wrote: > > Hi Jens, > thanks for getting back to me. > I've rebuilt with the latest but I still see problems with the numbers. > > I do see one improvement, > the "% done" printed while the test is in progress now increases nicely > from 0% to 100% > whereas before it would jump around to seemingly random values between > 0% to 100% > > I wonder is it picking the wrong set of numbers to print in some cases. > eg. from a test with 2 jobs that runs for 23 seconds I faound the > following in normal output ... > > when run standalone on a 32-bit VM I see this for a "rw=randread" job >> read : io=47106B, bw=2047B/s, iops=1023, runt= 23001msec > whereas when the same test is run from 64-bit client to 32-bit server I > see this for the same job >> trim: io=98789GB, bw=1000/s, iops=0, runt=98784247808000msec > so it says "trim" where it should say "read" > > and for the 2nd job which is "rw=write" > when run standalone on a 32-bit VM I see this >> write: io=34502B, bw=1500B/s, iops=750, runt= 23001msec > whereas when the same test is run from 64-bit client to 32-bit server I > see this for the same job >> read : io=148185GB, bw=1500/s, iops=750, runt=98788542775296msec > so it says "read" where it should say "write" > > In the same test run, the following results are identical when run both > ways ... >> >> Run status group 0 (all jobs): >> READ: io=46KB, aggrb=1KB/s, minb=1KB/s, maxb=1KB/s, mint=23001msec, >> maxt=23001msec >> WRITE: io=33KB, aggrb=1KB/s, minb=1KB/s, maxb=1KB/s, mint=23001msec, >> maxt=23001msec > so these results look correct. > > All the above problems are only seen when run from 64-bit client to > 32-bit server, > no problems seen when running standalone, > and no problems seen when running 64-bit client to 64-bit server. Try updating again. Not sure I caught all of them, so would be nice to know how it works now. -- Jens Axboe ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: using fio client on 64-bit machine with fio server on 32-bit machine 2014-06-30 14:52 ` Jens Axboe @ 2014-06-30 17:06 ` Frank D'Arcy 2014-07-01 2:23 ` Jens Axboe 0 siblings, 1 reply; 7+ messages in thread From: Frank D'Arcy @ 2014-06-30 17:06 UTC (permalink / raw) To: Jens Axboe, fio Problem solved! All results looks good to me. Thank you very much, Frank On 30/06/2014 15:52, Jens Axboe wrote: > On 06/30/2014 05:09 AM, Frank D'Arcy wrote: >> Hi Jens, >> thanks for getting back to me. >> I've rebuilt with the latest but I still see problems with the numbers. >> >> I do see one improvement, >> the "% done" printed while the test is in progress now increases nicely >> from 0% to 100% >> whereas before it would jump around to seemingly random values between >> 0% to 100% >> >> I wonder is it picking the wrong set of numbers to print in some cases. >> eg. from a test with 2 jobs that runs for 23 seconds I faound the >> following in normal output ... >> >> when run standalone on a 32-bit VM I see this for a "rw=randread" job >>> read : io=47106B, bw=2047B/s, iops=1023, runt= 23001msec >> whereas when the same test is run from 64-bit client to 32-bit server I >> see this for the same job >>> trim: io=98789GB, bw=1000/s, iops=0, runt=98784247808000msec >> so it says "trim" where it should say "read" >> >> and for the 2nd job which is "rw=write" >> when run standalone on a 32-bit VM I see this >>> write: io=34502B, bw=1500B/s, iops=750, runt= 23001msec >> whereas when the same test is run from 64-bit client to 32-bit server I >> see this for the same job >>> read : io=148185GB, bw=1500/s, iops=750, runt=98788542775296msec >> so it says "read" where it should say "write" >> >> In the same test run, the following results are identical when run both >> ways ... >>> Run status group 0 (all jobs): >>> READ: io=46KB, aggrb=1KB/s, minb=1KB/s, maxb=1KB/s, mint=23001msec, >>> maxt=23001msec >>> WRITE: io=33KB, aggrb=1KB/s, minb=1KB/s, maxb=1KB/s, mint=23001msec, >>> maxt=23001msec >> so these results look correct. >> >> All the above problems are only seen when run from 64-bit client to >> 32-bit server, >> no problems seen when running standalone, >> and no problems seen when running 64-bit client to 64-bit server. > Try updating again. Not sure I caught all of them, so would be nice to > know how it works now. > -- Frank D'Arcy www.s3group.com ----- The information contained in this e-mail and in any attachments is confidential and is designated solely for the attention of the intended recipient(s). If you are not an intended recipient, you must not use, disclose, copy, distribute or retain this e-mail or any part thereof. If you have received this e-mail in error, please notify the sender by return e-mail and delete all copies of this e-mail from your computer system(s). Please direct any additional queries to: communications@s3group.com. Thank You. Silicon and Software Systems Limited (S3 Group). Registered in Ireland no. 378073. Registered Office: South County Business Park, Leopardstown, Dublin 18. ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: using fio client on 64-bit machine with fio server on 32-bit machine 2014-06-30 17:06 ` Frank D'Arcy @ 2014-07-01 2:23 ` Jens Axboe 0 siblings, 0 replies; 7+ messages in thread From: Jens Axboe @ 2014-07-01 2:23 UTC (permalink / raw) To: Frank D'Arcy, fio On 2014-06-30 11:06, Frank D'Arcy wrote: > > Problem solved! > All results looks good to me. > Thank you very much, Excellent, thanks for reporting and testing. -- Jens Axboe ^ permalink raw reply [flat|nested] 7+ messages in thread
end of thread, other threads:[~2014-07-01 2:23 UTC | newest] Thread overview: 7+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2014-06-27 7:00 using fio client on 64-bit machine with fio server on 32-bit machine Frank D'Arcy 2014-06-27 16:47 ` Jens Axboe 2014-06-27 21:02 ` Jens Axboe 2014-06-30 11:09 ` Frank D'Arcy 2014-06-30 14:52 ` Jens Axboe 2014-06-30 17:06 ` Frank D'Arcy 2014-07-01 2:23 ` Jens Axboe
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox