In reply to Josh.

Thanks for writing. PROC FREQ is used for statistical analysis of categorical data. If all you want is counts and summaries, SAS supports several Base SAS procedures that are multithreaded. There are also SAS procedures that work in-database and there are SAS procedures that can perform distributed parallel processing on massive grids.

Perhaps your problem is that you are trying to perform a frequency analysis on a continuous (interval) variable. PROC FREQ does not transpose the data, but it does build trees of the unique values in variables, which can be time-consuming and memory-intensive when there are many unique values. Fortunately, SAS can help you determine whether to treat a numeric variable as continuous (many levels) or as discrete (relatively few levels). You can then get frequency tables for the categorical variables and means/StdDev for the continuous variables.

Since you seem to be experiencing difficulties, I encourage you to use the SAS Support Communities. There are many experts who have lots of experience using SAS on data that have billions of records. If you describe the pains you are having, they can almost surely recommend some best practices that will ease your pain.