VICServer Service showing high memory usage in Task Manager

Article: 100052251
Last Published: 2026-01-08
Ratings: 0 0
Product(s): Data Insight

Problem

VICServer Service showing high memory usage in Task Manager. The memory usage displayed here may not be accurate in case of managed processes. 

BackGround

While using classification we usually come across JAVA Heap Memory errors and recommend customers to increase the JAVA Heap Memory using the -xmx settings in the VICServerService.vmoptions file

Ref Article : https://www.veritas.com/content/support/en_US/article.100015863.html

In some cases the memory usage seen in Task Manager for the VICServerService.exe process may be showing higher than the assigned -xmx value. 

Cause

The problem occurs because internally VIC uses some native components. Additionally JAVA API's used also call some native components. The total cumulative count is displayed in the Task Manager. Hence the memory usage is observed to be on the higher side. The actual heap memory usage is usually lower than what is seen in Task Manager. 
 

Solution

To view the actual memory usage, we need to connect to the admin port URL from the Classification Server.
URL : http://localhost:<adminport>/vic/

For example : http://localhost:<8990>/vic (where 8990 is the admin port assigned)



Admin Port is a port used by VICServerService. This is not hard coded. Every time we restart the VICServerService, we are assigned a new admin port.

To understand which admin port is being used, please refer the vicserver_output log under <INSTALLDIR>\Program Files\DataInsight\log\vicserver_output.log

Security provider for cryptography compliance: CCJ
SafeLogic CryptoComply Java FIPS-Approved Only mode: false

PORT:8989
ADMINPORT:8990

The admin port being used currently is 8990 as per the log. 

So the Operational Menu is accessible using the URL : http://localhost:8990/vic/ from Classification Server only

 

Once we are able to access this URL, we can check the Metrics to see all the jvm.memory.heap values to understand the assigned and used memory better. 

"jvm.memory.heap.committed": {
    "value": 20501626880
},
"jvm.memory.heap.init": {
    "value": 20615004160
},
"jvm.memory.heap.max": {
    "value": 20501626880
},
"jvm.memory.heap.usage": {
    "value": 0.011411995807427357
},
"jvm.memory.heap.used": {
    "value": 233964480
},

 

 

 

 

Was this content helpful?