3 ms·
Everything requested is already in Rust. For rationale behind current design, read RFC 1199. https://github.com/rust-lang/rfcs/blob/master/text/1199-simd-infra
by sanxiyn 10y ago
Everything requested is already in Rust. For rationale behind current design, read RFC 1199.
https://github.com/rust-lang/rfcs/blob/master/text/1199-simd-infrastructure.md https://github.com/rust-lang/rfcs/blob/master/text/1199-simd...
Rust SIMD support tries to be type safe, so there are some subtleties involved for comparison and shuffling. (C SIMD support is not type safe.) I can imagine people disagreeing with decisions here. For example, one may have better type safe design, or one may opine it should not be type safe. But the linked issue lacks any details and is not very useful.
- siavashserver 10y agoLet's move the discussion over the linked issue on github.
- dikaiosune 10y agoSo, respectfully, why post this to HN if you didn't want anyone to discuss it here?
- siavashserver 10y agoTo get HN readers interested in such feature involved in the created issue on github. :)
- eggy 10y agoI am new to Rust, and RFC 1199 answered most of the questions I had in relation to the original OP link. I understand the decision not to tie vendor-specific SIMD labels and such, but are the data types for SIMD, not vendor-specific headers, available in Rust std, or do you need to use crate? If it needs to be brought in via a crate, and not std, I think the OP link may have a point, since SIMD is so crucial and becoming standard to many fields of computing. For instance, for over 2-1/2 years, Dart has had SIMD types available in the DART SDK through dart:typed_data [1] Again, I am a Rust noob, so pardon any holes in my reasoning here, but it would flavor my evaluation of Rust being a general systems programming language. [1] https://www.dartlang.org/articles/simd/ https://www.dartlang.org/articles/simd/
- sanxiyn 10y agoData types for SIMD are part of the language and you do not need any external crate. On the other hand, this is an unstable feature, and can't be used on stable release of Rust. I am actually in favor of stablizing current Rust SIMD as-is. But as you can read on the issue, other people are not. That's why it's not yet stable.
- eggy 10y agoThanks for explaining that aspect of it to me! I'll do some homework, and keep plugging along on learning Rust. My interest would be in Cuda programming with Rust instead of C.