macstl
macstl 0.3.1
Your rating: Now say why...

0

C++ source library.   Shareware ($99.00)
Add to my Watch List
Email me when discounted
macstl is a C++ source library designed to bring the Mac and SIMD into the world of modern generic programming.

macstl offers a new implementation of std::valarray optimized for SIMD on PowerPCs and Pentiums. It runs 3.6x to 16.2x faster than hand-coded scalar loops. A portable SIMD vec class lets you work with low-level SIMD instructions equivalently cross-platform.

The Mach copy-on-write vector is a partial specialization of std::vector for the Mach allocator. It neatly uses the OS vm_copy facility to "get around" thread safety issues when doing copy-on-write and reference
What's New
Version 0.3.1:
  • Fixed class scope vector typedefs, missing PowerPC intrinsics header, vector initializer syntax for FSF 3.4 [ILi*].
  • Added complex conj function for vec and valarray [ILi*].
  • Improved valarray expression performance: v1 [slice].
  • Improved valarray code generation: CSE, inlining limits, literal terms, array term elements, statarray construction, compiling -faltivec without -maltivec for Apple gcc 4.0.
  • Added refarray class [PBa].
  • Fixed buffer overflow in integral valarrays for SSE2; added optimizations for valarray expressions: v1 >> k and v1 << k for SSE2 [MSh].
  • Fixed accumulate array dispatch, integer constant overflow, literal benchmark test for SSE2; fixed chunking iterator pessimization for gcc 3.3/4 [ILi, RBe].
  • Added makefile for Linux x86 [ILi*].
  • Added support for FSF gcc 3.4 on Cygwin 1.5.
  • Added differently typed valarray construct and assign from terms, valarrays of sized booleans, select with sized booleans [ILi].
  • Fixed unix makefile directory.
  • Added macstlizer conversions: abs, abss, cmpeq, max, min.
  • Improved readme file.
Version 0.3.1:
  • Fixed class scope vector typedefs, missing PowerPC intrinsics header, vector initializer syntax for FSF 3.4 [ILi*].
  • Added complex conj function for vec and valarray [ILi*].
  • Improved valarray expression performance: v1 [slice].
  • Improved valarray code generation: CSE, inlining limits, literal terms, array term elements, statarray construction, compiling more...
Requirements
Mac OS X 10.3 or later (Xcode 1.5 + gcc 3.3, Xcode 2.1 + gcc 4.0, Codewarrior 9.3 or XLC++ 6.0);Windows 2000, XP or 2003 Server or later (Visual C++ .NET 2003 or Intel ICC 8.1); Linux PPC or x86, Cygwin 1.5 (FSF gcc 3.4 or later)






    Be the first to recommend a similar software title.
macstl User Discussion (Write a Review)
ver. 0.x:
Your rating: Now say why...
Overall:

sort: smiles | time
burypromote


Anonymous reviewed on 29 Jun 2005
Let's see. If one in a million code geeks needs your feeble help in making use of STL, you'll collect, let's see, a couple hundred bucks. If it's one in a thousand, you're rich, but then I fear for the future of software development. Me, I have to use lye soap to wash my hands every time I use C++.
[Version 0.3]

1 Reply

burypromote
Anonymous commented on 29 Jun 2005
You're entitled to your views on C++ and STL, but I want to clear up this point: macstl isn't an implementation of STL, rather it's an extension of it. It extends STL and the Standard Library into things like memory mapping, CFArrays and SIMD vectors.
There are currently no troubleshooting comments. If you are experiencing a problem with this app, please post a comment.

There are currently no ratings. Write a comment or review now.

Downloads:3,509
Version Downloads:1,716
Type:Development : Libraries
License:Shareware
Date:06 Sep 2005
Platform:PPC 32 / OS X
Price: $99.00
Overall (Version 0.x):
Features:
Ease of Use:
Value:
Stability:
Displaying 1-1 of 1
-
-
-
Please login or create a new
MacUpdate Member account
to use this feature
Watch Lists are available to
MacUpdate Desktop Members
Upgrade Now
Install with MacUpdate Desktop.
Save time moving files & cleaning
up space wasting archives.
macstl is a C++ source library designed to bring the Mac and SIMD into the world of modern generic programming.

macstl offers a new implementation of std::valarray optimized for SIMD on PowerPCs and Pentiums. It runs 3.6x to 16.2x faster than hand-coded scalar loops. A portable SIMD vec class lets you work with low-level SIMD instructions equivalently cross-platform.

The Mach copy-on-write vector is a partial specialization of std::vector for the Mach allocator. It neatly uses the OS vm_copy facility to "get around" thread safety issues when doing copy-on-write and reference counting. As a result, std::vector can be copied, passed back by value and enlarged without the same overheads.


- -