Please start any new threads on our new site at https://forums.sqlteam.com. We've got lots of great SQL Server experts to answer whatever question you can come up with.

 All Forums
 SQL Server 2005 Forums
 .NET Inside SQL Server (2005)
 Sizing memory for CLR

Author  Topic 

tfountain
Constraint Violating Yak Guru

491 Posts

Posted - 2009-02-21 : 10:01:28
Question, do you find yourself having to allocate additional memory to run CLR via the -g startup option? If so, how do you determine how much memory you allocate? I am not having an issue with it but we are just starting to implement CLR and would like to establish some sort of baseline to monitor.

tkizer
Almighty SQL Goddess

38200 Posts

Posted - 2009-02-22 : 02:13:33
We run CLR objects on a couple of our applications and haven't needed to pay any special attention to memory. But then again we buy very beefy servers, so memory is not typically an issue on our systems.

Tara Kizer
Microsoft MVP for Windows Server System - SQL Server
http://weblogs.sqlteam.com/tarad/

Subscribe to my blog
Go to Top of Page

tfountain
Constraint Violating Yak Guru

491 Posts

Posted - 2009-02-23 : 13:35:18
What type of CLR code do you run (what type of permission set(s) do you allow)?

From what I understand, SQL Server runs CLR in a reserved memory space outside of the normal memory region utilized by SQL Server, but within the SQL Server process space. This space defaults to 256 MB in SQL Server 2005 and can be changed by modifying the -g startup option.

Now the reason behind my inquiry - since this space is shared by extended stored procedures, OLEDB providers and such, 256 MB seems small, at least for our environment. We make extensive use of linked servers (that utilize OLEDB providers) and recently had to change it to 1 GB on our production servers due to memory related errors. Once we upped it to 1 GB the errors vanished. I'm hoping to uncover some sort of metric that can be monitored so we can obtain insight on a proactive basis, rather than waiting for 'app domain unloaded' errors.
Go to Top of Page

tkizer
Almighty SQL Goddess

38200 Posts

Posted - 2009-02-23 : 14:00:37
For application stuff, we run it in safe mode or whatever the term is. We do have DBA code that uses CLR objects (see my blog for a database growth object I wrote), and it needs to run in unsafe mode but that's purely on a DBA-only database.

The CLR code that we use for application stuff has to do with calculations and security stuff. All data access is done through T-SQL stored procedures.

Tara Kizer
Microsoft MVP for Windows Server System - SQL Server
http://weblogs.sqlteam.com/tarad/

Subscribe to my blog
Go to Top of Page
   

- Advertisement -