| 
 | 
地板
 
 
 楼主 |
发表于 2012-2-22 20:04:56
|
只看该作者
 
 
 
Re: 多语句共享数据?
这两天不是一直走这个脑子么,然后居然发现了这个情况~虽然凭借经验我能猜出个大概,提前预分配内存,方便PDV,TDV调整,但是谁能给个准信儿啊~ 
另外linux系统的也看看是不是效率有差别呢~感谢! 
 
我觉得这将近20倍的效率差别相当值得讨论一下的~ 
如果用memlib的话就是20倍的效率差别,如果用work而work本身映射硬盘直接,会看出来length的效率慢一倍,但是木length的并不会也变慢,这个应该是证明了之前PDV,TDV的假设? 
 
[code:35uax6u6]data a; 
do i=1 to 1000000; 
output; 
end; 
run; 
data mydata(drop=rc dsid); 
length i 8; 
   dsid=open("work.a","i"); 
   call set (dsid); 
   do j=1 to 1000000; 
      cc=abs(floor(rannor(1234)*100000)); 
      rc=fetchobs(dsid,cc); 
      output; 
   end; 
run; 
data mydata(drop=rc dsid); 
   dsid=open("work.a","i"); 
   call set (dsid); 
   do j=1 to 1000000; 
      cc=abs(floor(rannor(1234)*100000)); 
      rc=fetchobs(dsid,cc); 
      output; 
   end; 
run;[/code:35uax6u6] 
 
另外还有木有更快的方法? |   
 
 
 
 |