Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Announcement: "cpp-mmf" C++98 library released

51 views
Skip to first unread message

c.mila...@gmail.com

unread,
Aug 4, 2015, 5:47:08 PM8/4/15
to
I recently released the open source library "cpp-mmf":
https://github.com/carlomilanesi/cpp-mmf

It encapsulates memory-mapped files for both POSIX and Windows operating systems.

It has the same purpose and the same run-time speed of the "Memory-Mapped Files" Boost library, but it offers the following advantages:
* It has no dependencies on other libraries, except, of course, the operating system headers.
* It is faster to compile. Using Linux, it is about 5 times as fast to compile than using Boost.
* It generates smaller code. Using Linux, it generates a stripped program that is less than a third of the one generated using Boost.
* It has a better tutorial.

--
Carlo Milanesi

Richard

unread,
Aug 6, 2015, 1:57:05 PM8/6/15
to
[Please do not mail me a copy of your followup]

c.mila...@gmail.com spake the secret code
<6f498452-c3c1-41fc...@googlegroups.com> thusly:

>I recently released the open source library "cpp-mmf":
>https://github.com/carlomilanesi/cpp-mmf

There's already a boost library that covers this.

<http://www.boost.org/doc/libs/1_58_0/libs/iostreams/doc/classes/mapped_file.html>
--
"The Direct3D Graphics Pipeline" free book <http://tinyurl.com/d3d-pipeline>
The Computer Graphics Museum <http://computergraphicsmuseum.org>
The Terminals Wiki <http://terminals.classiccmp.org>
Legalize Adulthood! (my blog) <http://legalizeadulthood.wordpress.com>

Victor Bazarov

unread,
Aug 6, 2015, 2:31:23 PM8/6/15
to
On 8/6/2015 1:56 PM, Richard wrote:
> [Please do not mail me a copy of your followup]
>
> c.mila...@gmail.com spake the secret code
> <6f498452-c3c1-41fc...@googlegroups.com> thusly:
>
>> I recently released the open source library "cpp-mmf":
>> https://github.com/carlomilanesi/cpp-mmf
>
> There's already a boost library that covers this.
>
> <http://www.boost.org/doc/libs/1_58_0/libs/iostreams/doc/classes/mapped_file.html>

Did you read past the second line of the announcement?

The OP wrote:
>> It has the same purpose and the same run-time speed of the
>> "Memory-Mapped Files" Boost library, but it offers the following
>> advantages: [...]

V
--
I do not respond to top-posted replies, please don't ask

Mr Flibble

unread,
Aug 7, 2015, 9:59:17 AM8/7/15
to
On 04/08/2015 22:46, c.mila...@gmail.com wrote:
> I recently released the open source library "cpp-mmf":
> https://github.com/carlomilanesi/cpp-mmf
>
> It encapsulates memory-mapped files for both POSIX and Windows operating systems.

Does the Boost alternative support more than just POSIX and Windows?

>
> It has the same purpose and the same run-time speed of the "Memory-Mapped Files" Boost library, but it offers the following advantages:
> * It has no dependencies on other libraries, except, of course, the operating system headers.
> * It is faster to compile. Using Linux, it is about 5 times as fast to compile than using Boost.

Compilation time is hardly an important consideration when choosing a
library.

> * It generates smaller code. Using Linux, it generates a stripped program that is less than a third of the one generated using Boost.

A third less isn't even an order of magnitude.

> * It has a better tutorial.

Why don't you contribute to a better Boost tutorial?

/Flibble

c.mila...@gmail.com

unread,
Aug 7, 2015, 2:58:49 PM8/7/15
to
Mr Flibble wrote:
> > I recently released the open source library "cpp-mmf":
> > https://github.com/carlomilanesi/cpp-mmf
> >
> > It encapsulates memory-mapped files for both POSIX and Windows operating systems.
>
> Does the Boost alternative support more than just POSIX and Windows?

I think not.
However, if you know of other operating systems supporting memory-mapped files, and for which there is a significant number of C++ programmers needing them, tell me.

> Compilation time is hardly an important consideration when choosing a
> library.
I usually take compilation time into account.
If you compile once a day, and your compilation takes less than 5 seconds, it is irrelevant.
But if you compile once ever ten minutes, and your compilation takes 5 minutes,
it is very relevant.

> > * It generates smaller code. Using Linux, it generates a stripped program that is less than a third of the one generated using Boost.
>
> A third less isn't even an order of magnitude.

It is "less than a third" (with Clang for Linux), not "a third less".
A small program compiled with GCC or Clang, creates executable programs of the following sizes in byes:
cpp-mmf Boost
gcc for Windows 11264 24576
gcc for Linux 9836 26292
Clang for Linux 8572 29224

I wasn't able to compile it with Visual C++ and Boost.

> > * It has a better tutorial.
>
> Why don't you contribute to a better Boost tutorial?

Because I don't like it.

Why don't you contribute to cpp-mmf by trying to use it, and telling me what you don't like of it?

--
Carlo Milanesi

Mr Flibble

unread,
Aug 7, 2015, 3:03:06 PM8/7/15
to
On 07/08/2015 19:58, c.mila...@gmail.com wrote:
>
> Why don't you contribute to cpp-mmf by trying to use it, and telling me what you don't like of it?

Probably because boost would meet my needs if I ever wanted to use a
memory mapped file (which is hardly ever).

/Flibble
0 new messages