В C++ вы можете использовать декларатор __declspec( align( # ) )
для управления выравниванием пользовательских -данных. Как это сделать для C #. У меня в dll есть две процедуры, написанные на ассемблере. Аргументы для процедур (два массива )должны быть выровнены по 16 байтам. Для С++ работает нормально.
Я просто использовал объявления
__declspec( align( 16 ) )
double a[2]={10.2,10.6};