BookmarkSubscribeRSS Feed
Reeza
Super User

If it's University Edition it's on a virtual machine, using Oracle VirtualBox or is it a purchased copy from your University which is a different version, I think that's usually referred to as an Academic License but I could be wrong on that. Since you're referring to changing the config file you're likely using an academic license if you can modify the config file. 

 

I can't see the timings in your screenshots, they're way too small for me to read. 

 

 

hhchenfx
Barite | Level 11

SLOWSLOWFASTFAST

ChrisNZ
Tourmaline | Level 20

This thread is so confusing.

 

What was running when you had the circled ram usage? the data step or the proc sort?

It looks like it was the sort since the sort code is highlighted.

 

How are we then supposed to comment on the data step?

 

Also I notice that the "idle "memory usage is 3GB on one side, and 9GB on the other. Not the same config at all.

 

Please run  proc options group=memory;run;  on both machines and post the result.

hhchenfx
Barite | Level 11

The slow one:


Group=MEMORY
SORTSIZE=268435456
Size parameter for sort
SUMSIZE=0 Upper limit for data-dependent memory usage during summarization
MAXMEMQUERY=0 Maximum amount of memory returned when inquiring as to available space
MEMBLKSZ=16777216 Size of memory blocks allocated to support MEMLIB and MEMCACHE options.
MEMMAXSZ=2147483648
Maximum amount of memory allocated to support MEMLIB and MEMCACHE options.
LOADMEMSIZE=0 Suggested memory limit for loaded SAS executables
MEMSIZE=2147483648
Specifies the limit on the total amount of memory to be used by the SAS
System
REALMEMSIZE=0 Limit on the total amount of real memory to be used by the SAS System
NOTE: PROCEDURE OPTIONS used (Total process time):
real time 0.00 seconds
cpu time 0.01 seconds

 

 

Fast one

 

Group=MEMORY
SORTSIZE=268435456
Size parameter for sort
SUMSIZE=0 Upper limit for data-dependent memory usage during summarization
MAXMEMQUERY=0 Maximum amount of memory returned when inquiring as to available space
MEMBLKSZ=16777216 Size of memory blocks allocated to support MEMLIB and MEMCACHE options.
MEMMAXSZ=2147483648
Maximum amount of memory allocated to support MEMLIB and MEMCACHE options.
LOADMEMSIZE=0 Suggested memory limit for loaded SAS executables
MEMSIZE=2147483648
Specifies the limit on the total amount of memory to be used by the SAS
System
REALMEMSIZE=0 Limit on the total amount of real memory to be used by the SAS System
NOTE: PROCEDURE OPTIONS used (Total process time):
real time 0.00 seconds
cpu time 0.00 seconds

 

 

It seems there is no difference at all.

Reeza
Super User

Can you set the fullstimer option and run both and post the full log from each. 

 

options fullstimer;
ChrisNZ
Tourmaline | Level 20

Also runs this

  data _null_; FREERAM_MB=input(getoption('xmrlmem'),20.)/1024/1024; put FREERAM_MB= 8.; run;

 

And comment on this:

 

  What was running when you had the circled ram usage? the data step or the proc sort?

  

  Also I notice that the "idle "memory usage is 3GB on one side, and 9GB on the other. Why?

hhchenfx
Barite | Level 11
I run the data step then sort. So the spike should assocaited with sort. I will run a clearer test later.

The idle memory issue, most likely, I open web, Doc, Excel on that fast PC.

Slow PC
FREERAM_MB=1633
NOTE: DATA statement used (Total process time):
real time 0.07 seconds
cpu time 0.01 seconds

Fast PC
FREERAM_MB=1622
NOTE: DATA statement used (Total process time):
real time 0.00 seconds
cpu time 0.00 seconds
ChrisNZ
Tourmaline | Level 20

Mmm.

You have 32GB of RAM, 21 GB of MEMSIZE (MEMSIZE includes the paging space) but only 1.5 GB or RAM is available to SAS.

1. I can't see how SAS can use more than that 1.5 GB, so graph is bizarre.

2. Lets try to give more RAM to SAS. Set REALMEMSIZE to 18 GB instead of 0 to see what happens.

3. Don't forget to turn on fullstimer.

4. In any case, more RAM should not help the data step much, only the sort. The speed of the data step in your case is solely the speed to read and write to the disk. Maybe running inside a VM explains the drop in performance?

 

ChrisNZ
Tourmaline | Level 20

I wish there was a way to query the values set by SAS when the configuration values are zero.

hhchenfx
Barite | Level 11

So you meant in the config, I should change to

/* Memlib Memory options */

-MEMLIB
-MEMCACHE 4
-MEMMAXSZ 32G 
-MEMSIZE MAX
-REALMEMSIZE 18G -SORTSIZE 1G

 

ChrisNZ
Tourmaline | Level 20

@hhchenfx Yes that's what I mean.

You should see the difference when running 

data _null_; FREERAM_MB=input(getoption('xmrlmem'),20.)/1024/1024; put FREERAM_MB= 8.; run;

 

 

Wait, I notice you have

-MEMMAXSZ 32G 

Why?

 

This value must be lower than MEMSIZE (which 2GB or 21GB in your case, you have given us conflicting figures), and competes for RAM with REALMEMSIZE.

See my posts here and here.

 

About my comment on slow IO with a VM: Do you have SAS UE at home of the full desktop version?

Reeza
Super User

@ChrisNZ based on the screenshots it's a full SAS installation, not SAS UE. 

ChrisNZ
Tourmaline | Level 20

@Reeza Should we ask for proc setinitSmiley Wink

ChrisNZ
Tourmaline | Level 20

It looks like your (just a few seconds) faster sort might be using an internal (RAM-based) sort while the other sort uses external (disk-based) sort. If so, the value of option SORTSIZE is the reason.

Please show the values of SORTSIZE, REALMEMSIZE and MEMSIZE.

sas-innovate-2024.png

Don't miss out on SAS Innovate - Register now for the FREE Livestream!

Can't make it to Vegas? No problem! Watch our general sessions LIVE or on-demand starting April 17th. Hear from SAS execs, best-selling author Adam Grant, Hot Ones host Sean Evans, top tech journalist Kara Swisher, AI expert Cassie Kozyrkov, and the mind-blowing dance crew iLuminate! Plus, get access to over 20 breakout sessions.

 

Register now!

How to Concatenate Values

Learn how use the CAT functions in SAS to join values from multiple variables into a single value.

Find more tutorials on the SAS Users YouTube channel.

Click image to register for webinarClick image to register for webinar

Classroom Training Available!

Select SAS Training centers are offering in-person courses. View upcoming courses for:

View all other training opportunities.

Discussion stats
  • 28 replies
  • 1229 views
  • 2 likes
  • 4 in conversation