Re:“Land initial Rust MP4 parser and unit tests”
by steveklabnik on Thursday June 18, 2015 @04:22PM
(#9741390)
I am far from an expert in this area, but you can do SIMD with Rust: https://github.com/huonw/simd
[ Parent
| on HN ]
Re:“Land initial Rust MP4 parser and unit tests”
by haberman on Thursday June 18, 2015 @04:47PM
(#9741523)
This looks like a good start (though experimental). If it supported something like AltaVec's vec_any_eq() intrinsic on its u8x16 type, that would do the trick. vec_any_eq() takes a vector and a value and returns true if any element of the vector equals the value.
On x86 with SSE, this could generate a sequence of two instructions: pcmpeqb (do 16 byte-wise compares) followed by pmovmskb (collect the 16 comparison results into a single byte). Then you'd get the same efficiency as what Clang does (Clang searches 8 bytes at a time for a '/' character when skipping over comments).