BookmarkSubscribeRSS Feed
Indrajeet
Calcite | Level 5

I have following code:

data _null_;
x = dqmatch('Indrajeet Patil','Name',80,'ENUSA');
put x=;
run;


This is used to generate match code, executing stored process each time there is a call from source system.
This code takes 2-3 seconds to complete first time you execute it in a session.
Later executions on the same sessions take milliseconds.
Response should be much faster as this is used in real-time screening.
How to improve this code for first time execution also the later executions?

4 REPLIES 4
andreas_lds
Jade | Level 19

First time execution could be longer, because the sas session has to be started.

 

I recommend contacting tech support, because analysing performance issues requires in-deep knowledge of the whole system.

VasilijNevlev
Quartz | Level 8
Consider deploying it as a real time service on your data management server
instead. In that case you will have a process that is constantly online to
fulfill requests. You will get identical result, but a lot faster.

Regards,
Vasilij
=======================================
For more information about {An}alytium, visit https://www.analytium.co.uk
Kurt_Bremser
Super User

Even if a stored process server has its instances already started, over time they will be paged out to paging space due to inactivity. Then the first request will be delayed while the process is paged back in.

boemskats
Lapis Lazuli | Level 10

I suspect that your sassrv user is configured as an off-host / AD user, and that the authentication required at the operating system level to start a Multibridge session is causing a delay.

 

Increase the  STP Server Start Size to match the number of Multibridge sessions you have defined, and if you're going to depend on this as an operational scoring service, also define some additional Multibridge sessions (assuming current default of 3). Increasing Start Size to match the number of sessions will make sure that STP multibridge processes are authenticated at the OS level and started by the Spawner long before your STP request ever hits them, so that they are ready for execution.

 

Note on increasing start size and removing the Inactivity Timeout: http://support.sas.com/kb/20/769.html

Note on adding multibridge sessions: http://support.sas.com/kb/30/568.html

 

@Kurt_Bremser - when you consider the typically 60ms+ round trip from client -> spawner -> metadata -> multibridge -> client, the page faults will be insignificant.

 

Nik

SAS Innovate 2025: Call for Content

Are you ready for the spotlight? We're accepting content ideas for SAS Innovate 2025 to be held May 6-9 in Orlando, FL. The call is open until September 25. Read more here about why you should contribute and what is in it for you!

Submit your idea!

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
  • 4 replies
  • 1616 views
  • 2 likes
  • 5 in conversation