Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

There is __attribute__((aligned)) that some compilers provide (e.g. gcc, clang) but it's non-standard.


Thank you for the respone.

Can we write like this? Klass ssc __attribute__((64));

This could convey more info than padding.

Further, I wish, gcc could have provided an attribute that explicitly forces for the cache line alignment than just generic alignment. Generic scalar type alignment is not same as the cache line alignment.

Example: Klass sc __attribute__((start_at_cache_line));


alignas(std::hardware_destructive_interference_size) is the portable solution.


Thank you for sharing this. I was not aware of this. But now agree, it is indeed portable solution.


alignas() has been standard for a decade now.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: