All of lore.kernel.org
 help / color / mirror / Atom feed
* FIO on ARM
@ 2015-05-05  9:02 Alexey Skidanov
  2015-05-05 15:47 ` Jens Axboe
  0 siblings, 1 reply; 3+ messages in thread
From: Alexey Skidanov @ 2015-05-05  9:02 UTC (permalink / raw)
  To: fio@vger.kernel.org; +Cc: Alex Lemberg

Hi,

I would like to run FIO on an ARM based board. I have cloned the git repository by git clone git://git.kernel.dk/fio.git and cross compiled the sources (exactly as it explained in the README file). After that, I have created a simple job file test.fio:

[global]
bs=512k
iodepth=4
size=1g
direct=1
runtime=60
directory= ...
filename= ...
ioengine=libaio

[seq-read]
rw=read
stonewall

[rand-read]
rw=randread
stonewall

[seq-write]
rw=write
stonewall

[rand-write]
rw=randwrite
stonewall

Running fio test.fio I get the following error:

fio: engine libaio not loadable
fio: failed to load engine libaio
fio: file:ioengines.c:99, func=dlopen, error=libaio: cannot open shared object file: No such file or directory

The config.log file contains the following error:

Compiling test case libaio
arm-linux-gnueabihf-gcc -D_GNU_SOURCE -include config-host.h -o /tmp/fio-conf--17007-.exe /tmp/fio-conf--17007-.c -laio
/usr/lib/gcc/arm-linux-gnueabihf/4.6/../../../../arm-linux-gnueabihf/bin/ld: cannot find -laio
collect2: ld returned 1 exit status

The make printouts contain the following lines :
FIO_VERSION = fio-2.2.7-29-g020d5
Running configure for you...
Operating system              Linux
CPU                           arm
Big endian                    no
Compiler                      arm-linux-gnueabihf-gcc
Cross compile                 yes
...
Linux AIO support             no
...

Since libaio-dev exists only for amd and i386 platforms, the fio couldn't be statically linked with aio. Thus, I need to download the libaio sources, compile them and install the libaio.so on the target.

Thanks,
Alexey




^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: FIO on ARM
  2015-05-05  9:02 FIO on ARM Alexey Skidanov
@ 2015-05-05 15:47 ` Jens Axboe
  2015-05-06 15:52   ` Alexey Skidanov
  0 siblings, 1 reply; 3+ messages in thread
From: Jens Axboe @ 2015-05-05 15:47 UTC (permalink / raw)
  To: Alexey Skidanov, fio@vger.kernel.org; +Cc: Alex Lemberg

On 05/05/2015 03:02 AM, Alexey Skidanov wrote:
> Hi,
>
> I would like to run FIO on an ARM based board. I have cloned the git repository by git clone git://git.kernel.dk/fio.git and cross compiled the sources (exactly as it explained in the README file). After that, I have created a simple job file test.fio:
>
> [global]
> bs=512k
> iodepth=4
> size=1g
> direct=1
> runtime=60
> directory= ...
> filename= ...
> ioengine=libaio
>
> [seq-read]
> rw=read
> stonewall
>
> [rand-read]
> rw=randread
> stonewall
>
> [seq-write]
> rw=write
> stonewall
>
> [rand-write]
> rw=randwrite
> stonewall
>
> Running fio test.fio I get the following error:
>
> fio: engine libaio not loadable
> fio: failed to load engine libaio
> fio: file:ioengines.c:99, func=dlopen, error=libaio: cannot open shared object file: No such file or directory
>
> The config.log file contains the following error:
>
> Compiling test case libaio
> arm-linux-gnueabihf-gcc -D_GNU_SOURCE -include config-host.h -o /tmp/fio-conf--17007-.exe /tmp/fio-conf--17007-.c -laio
> /usr/lib/gcc/arm-linux-gnueabihf/4.6/../../../../arm-linux-gnueabihf/bin/ld: cannot find -laio
> collect2: ld returned 1 exit status
>
> The make printouts contain the following lines :
> FIO_VERSION = fio-2.2.7-29-g020d5
> Running configure for you...
> Operating system              Linux
> CPU                           arm
> Big endian                    no
> Compiler                      arm-linux-gnueabihf-gcc
> Cross compile                 yes
> ...
> Linux AIO support             no
> ...
>
> Since libaio-dev exists only for amd and i386 platforms, the fio couldn't be statically linked with aio. Thus, I need to download the libaio sources, compile them and install the libaio.so on the target.

That seems like a distro issue, there's absolutely no reason why 
libaio-dev(el) should not be available on arm based distro. 
Additionally, fio dynamically links with libaio, it's not a static link.

-- 
Jens Axboe



^ permalink raw reply	[flat|nested] 3+ messages in thread

* RE: FIO on ARM
  2015-05-05 15:47 ` Jens Axboe
@ 2015-05-06 15:52   ` Alexey Skidanov
  0 siblings, 0 replies; 3+ messages in thread
From: Alexey Skidanov @ 2015-05-06 15:52 UTC (permalink / raw)
  To: Jens Axboe, fio@vger.kernel.org; +Cc: Alex Lemberg


> -----Original Message-----
> From: Jens Axboe [mailto:axboe@kernel.dk]
> Sent: Tuesday, May 05, 2015 6:47 PM
> To: Alexey Skidanov; fio@vger.kernel.org
> Cc: Alex Lemberg
> Subject: Re: FIO on ARM
> 
> On 05/05/2015 03:02 AM, Alexey Skidanov wrote:
> > Hi,
> >
> > I would like to run FIO on an ARM based board. I have cloned the git
> repository by git clone git://git.kernel.dk/fio.git and cross compiled the
> sources (exactly as it explained in the README file). After that, I have created
> a simple job file test.fio:
> >
> > [global]
> > bs=512k
> > iodepth=4
> > size=1g
> > direct=1
> > runtime=60
> > directory= ...
> > filename= ...
> > ioengine=libaio
> >
> > [seq-read]
> > rw=read
> > stonewall
> >
> > [rand-read]
> > rw=randread
> > stonewall
> >
> > [seq-write]
> > rw=write
> > stonewall
> >
> > [rand-write]
> > rw=randwrite
> > stonewall
> >
> > Running fio test.fio I get the following error:
> >
> > fio: engine libaio not loadable
> > fio: failed to load engine libaio
> > fio: file:ioengines.c:99, func=dlopen, error=libaio: cannot open shared
> object file: No such file or directory
> >
> > The config.log file contains the following error:
> >
> > Compiling test case libaio
> > arm-linux-gnueabihf-gcc -D_GNU_SOURCE -include config-host.h -o
> /tmp/fio-conf--17007-.exe /tmp/fio-conf--17007-.c -laio
> > /usr/lib/gcc/arm-linux-gnueabihf/4.6/../../../../arm-linux-gnueabihf/bin/ld:
> cannot find -laio
> > collect2: ld returned 1 exit status
> >
> > The make printouts contain the following lines :
> > FIO_VERSION = fio-2.2.7-29-g020d5
> > Running configure for you...
> > Operating system              Linux
> > CPU                           arm
> > Big endian                    no
> > Compiler                      arm-linux-gnueabihf-gcc
> > Cross compile                 yes
> > ...
> > Linux AIO support             no
> > ...
> >
> > Since libaio-dev exists only for amd and i386 platforms, the fio couldn't be
> statically linked with aio. Thus, I need to download the libaio sources, compile
> them and install the libaio.so on the target.
> 
> That seems like a distro issue, there's absolutely no reason why
> libaio-dev(el) should not be available on arm based distro.
> Additionally, fio dynamically links with libaio, it's not a static link.
> 
> --
> Jens Axboe

I configured the APT with additional architecture (armhf) and updated repositories list for this architecture , downloaded the libaio-dev and cross compiled the FIO. The make  printouts are with  AIO support:

FIO_VERSION = fio-2.2.7-29-g020d5
Running configure for you...
Operating system              Linux
CPU                           arm
Big endian                    no
Compiler                      arm-linux-gnueabihf-gcc
Cross compile                 yes
...
Linux AIO support             yes


Now it runs on ARM.

Thanks,
Alexey


^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2015-05-06 15:52 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2015-05-05  9:02 FIO on ARM Alexey Skidanov
2015-05-05 15:47 ` Jens Axboe
2015-05-06 15:52   ` Alexey Skidanov

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.