I am attempting to fit a glimmix model for a binary outcome for a few million individuals. Each individual has 1 observation. Part of the problem is the individuals belong to families, and individuals in the family will have the same exposure, though not necessarily the same outcome. There are about half as many family units, though some families have 1 person, some 2 people, some 3, etc. I initially tried a proc genmod like this: proc genmod data = dataset descending; class outcome (ref = "0") exposure (ref = "0") family/ param = Reference; model outcome = exposure / dist = binomial link = logit; repeated subject = family/ corr = UN; estimate "exposure" exposure 1 / exp; run; The problem with this method is that I was getting the warning: The working correlation has been ridged with a maximum value to avoid a singularity. The number that was being ridged with would dependent on how the data was sorted (I always had the data sorted by family first, but sometimes I would have secondary sorting options). In term this would produce very different parameter estimates. While always in the same direction, but the strength of the relationship would vary quite a bit. After reviewing the boards, I tried using a proc glimmix data = dataset; class exposure (ref = "0") family; model outcome(event = '1') = exposure / solution dist = binomial link=logit; random INTERCEPT /subject= family; estimate "exposure " exposure 1 / exp; run; This runs for about 30 minutes before throwing the error: Model is too large to be fit by proc glimmix in a reasonable amount of time on this system. Consider changing your model. I have tried a few more options in my glimmix. nloptions technique = nrridg; and method = laplace and method = paplace empirical. The same results. The part that troubles me is that I am on a system with 64 gbs of memory and a quad core processor. Watching windows task manager it seems that sas is using very little of the available resources: about 500 mbs of memory, CPU percent is about 14%, and Disk is less than 3% (with plenty of available hard drive space). So some questions: 1. Can I get SAS to use more resources to run this procedure? 2. Can I alter the procedure to run? 3. Is there something else entirely you'd recommend? In advance, thank you for all your help.
... View more