README.pod
March 6, 2015 · View on GitHub
=encoding utf8
=head1 NAME
FFI::Performance - Benchmarks and tests for Perl + FFI + Performance
=head1 SYNOPSIS
perl Build.PL ./Build perl -Mblib bin/ffi-performance-benchmark
=head1 DESCRIPTION
This code was originally hacked together to get some relative benchmarks
for a talk that I gave at the Pittsburgh Perl Workshop in 2014. At that
time, LFFI::Platypus was just a prototype (and the interface was quite
different), but the "killer feature" which is the ability to attach a C
function as a Perl xsub was already there. Since then LFFI::Platypus
has been completely re-written and now provides practical FFI bindings
for Perl. I've kept this companion non-CPAN distrubtion up to date to
use the now production Platypus interface. The code as it was when I
gave the PPW talk is tagged as C
What follows is the text I wrote after the talk:
This is the companion code to a talk that I gave at the Pittsburgh Perl Workshop 2014. Here is a recording:
https://www.youtube.com/watch?v=uq2mgTOtbhM&t=7m47s&noredirect=1
(starts at about 7:45 if the link does not take you directly to the beginning of the talk).
The slides are a little hard to read on the recording and you can see them here:
https://docs.google.com/presentation/d/1zUT91W5qDq8eoDYWNpfn-DQABcLCyl_M-xbz5obAI_U/edit
This was apparently the scariest part of my talk:
https://twitter.com/mikegrb/status/531186796450033664/photo/1
=head1 SEE ALSO
=over
=item LFFI::Platypus
=item LFFI::Raw
=item LFFI::Util
pointer trickiness
=item LFFI::CheckLib
Detect and find DLLs / shared libraries à la LExtUtils::CheckLib
=item LFFI::TinyCC
caveat laden JITish for FFI
=item FFI based extensions
=over
=item LArchive::Libarchive::FFI
=item LCrypt::ZCert
=item LZMQ::FFI
=item LPOEx::ZMQ
=item LFile::LibMagic::FFI
=item LUUID::FFI|http://github.com/plicease/UUID-FFI
=back
=item L<libffi|https://sourceware.org/libffi/>
=item L<Ruby FFI|https://github.com/ffi/ffi/wiki>
=item L<Python's Ctypes|http://docs.python.org/2/library/ctypes.html>
=back
=head1 AUTHOR
Graham Ollis E
=head1 COPYRIGHT AND LICENSE
This software is copyright (c) 2014 by Graham Ollis
This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.
=cut