Use alloc to allocate memory, then use the same layout that you used for alloc to dealloc memory. What alignment you want depends on what you are doing with the allocation.
It looks like you are trying to have the layout of a [u32; 100]. In that case, as with any type known at compile time, you can get its layout with Layout::new::<[u32; 100]>().
In case 100 was just an example, and you actually have a dynamic length n (only known on runtime), then you need to replicate Layout::array::<u32>(n); which ends up being