added serial but threaded SAI generation