Is L1 cache shared among targets in a node?

Software-based VM-centric and flash-friendly VM storage + free version

Moderators: anton (staff), art (staff), Max (staff), Anatoly (staff)

Post Reply
webguyz
Posts: 23
Joined: Sat Jan 26, 2013 12:34 am

Sat May 12, 2018 5:46 pm

Hi,
Setting up a 2 node Starwind SAN and have a question. My nodes have 64gb of ram I want to use for L1 cache and I want to have 3 targets in each node. When I set up the targets do I tell each target to use 64gb of L1 cache, or do I have to split the 64gb of ram 3 ways and only give each target 21gb of L1 cache?

Thanks!
Boris (staff)
Staff
Posts: 805
Joined: Fri Jul 28, 2017 8:18 am

Mon May 14, 2018 10:54 am

When allocating RAM to be used for L1 cache in StarWind, you'd need to take into account at least the following factors:
1. L1 cache size is indicated per device. This means that if you assign 64GB to each device, it would require the StarWind service to lock 192GB of RAM. Which you do not have in this case.
2. The OS itself needs some RAM to operate properly. Remember that the StarWind service is not something that stands apart from the OS, but is rather a component added to it. This is why the StarWind service depends on the system stability. If the OS does not have enough RAM, you wouldn't count on the VSAN stability either. So, be sure to leave some RAM for the OS itself.
3. VMs require RAM. If your setup is hyperconverged, it means all your VMs are running on the same nodes that the StarWind service is and they need RAM. Take this into account when planning L1 RAM allocation for StarWind.
webguyz
Posts: 23
Joined: Sat Jan 26, 2013 12:34 am

Mon May 14, 2018 11:48 am

What is confusing is that Windows Task Manager does not show the memory allocated to L1 cache. If your are overallocated does something happen? I currently have 128gb of memory and allocated 64gb to each of my 2 targets on that node. Didn't think to ask about allocation. Didn't see anything any memory taken or locked in Task Manager so got confused.
webguyz
Posts: 23
Joined: Sat Jan 26, 2013 12:34 am

Mon May 14, 2018 12:18 pm

Question about the correct way to change the cache setting. Below is the info from the FAQ I found on the Starwind site.

I have 2 .swdsk files for every image file and one of them has a _HA appended. Is this the correct .swdsk file that needs to be changed?

Also it says to restart the service. I have 2 services, Starwind Virtual Server and Starwind Cluster Service running. Is it just the Starwind Virtual Server service that needs to be restarted?

And lastly it says to change mode, does that mean changing from write-back to write-through? Just want to make 100% sure.

------------------- From FAQ -----------------
You can change cache size on fly only for HA. In Starwind console you need to open *.swdsk of corresponding device in your Storage pool and edit the line:

<- cache type="write-back" size="128" units="MB" level="1" -> * by setting required size.
Then you need to restart service, wait for synchronization process to end and repeat abovementioned steps on each StarWind node one-by-one.

Note: in HA if you change cache mode it is necessary to change it on all the nodes.
For non-HA it will cause downtime, because you need to turn into offline your storage.
Note: in HA if you change cache mode it is necessary to change cache mode on all nodes. Cache size can be different.
Boris (staff)
Staff
Posts: 805
Joined: Fri Jul 28, 2017 8:18 am

Mon May 14, 2018 3:37 pm

webguyz wrote:What is confusing is that Windows Task Manager does not show the memory allocated to L1 cache. If your are overallocated does something happen? I currently have 128gb of memory and allocated 64gb to each of my 2 targets on that node. Didn't think to ask about allocation. Didn't see anything any memory taken or locked in Task Manager so got confused.
The service will lock the allocated amount of RAM. If you check RAM consumption, it should be there.
webguyz wrote:Question about the correct way to change the cache setting. Below is the info from the FAQ I found on the Starwind site.
I have 2 .swdsk files for every image file and one of them has a _HA appended. Is this the correct .swdsk file that needs to be changed?
Also it says to restart the service. I have 2 services, Starwind Virtual Server and Starwind Cluster Service running. Is it just the Starwind Virtual Server service that needs to be restarted?
And lastly it says to change mode, does that mean changing from write-back to write-through? Just want to make 100% sure.
The service to be restarted is the StarWind VSAN service. StarWind Cluster Service is generally not required in Hyper-V environments. As for the cache mode, you can choose between write-back and write-through. Both are possible, so it's up to you to select.
webguyz
Posts: 23
Joined: Sat Jan 26, 2013 12:34 am

Mon May 14, 2018 4:36 pm

You mean check RAM consumption in Starwind, not in Windows Task Manager, correct?
webguyz
Posts: 23
Joined: Sat Jan 26, 2013 12:34 am

Mon May 14, 2018 9:14 pm

It appears I was not paying attention and assigned it 64 MB instead of GB I can now see memory I have assigned to the img file in Windows Task Manager.

Doah!
Boris (staff)
Staff
Posts: 805
Joined: Fri Jul 28, 2017 8:18 am

Tue May 15, 2018 7:09 am

It's great you have figured it out.
Post Reply