0
votes

I had one main program in sas, in that another 2 sas programs are being called.

These 2 sas programs create formats using proc format cntlin from large data sets and are temporary means residing in workspace. These formats are used in sas program to assing format to some variables.

In main sas program almost 15 large data sets are created in work library.

Some proc sql joins and data step merges are happening

We have index creation on data sets using proc datasets.

We also used proc sort

Where ever possible used where instead of if

It had mprint mlogic symbolgen options enabled

And some small logic wise performance tuning is done.

Here most part of dataset creation is done in work library. If we clear total work space previously created formats are lost. We dont want to loose formats untill end of job because these are used in entire sas program.

It is taking 1TB of sas workspace to accomplish all this job. So i wanted to reduce this usage space.

Can you guys someone please suggest what are all optimizations we can do to use less space as well as memory.

1
This isn't something that is appropriate for this site - much too broad of a question as it stands now. Really you need someone to analyze your code for you and make suggestions, and that's not practical (nor, presumably, permitted by your company) here. - Joe
Adding memory and disk could be cheaper than $/hr time to optimize - Richard
option compress=yes; if you're not already. - Robert Penridge

1 Answers

0
votes

Write the format catalogs to a different folder.