I am unable to run Android parallel test in multiple devices with More than one test running in the same thread with Automation Name UI Automator2

I am unable to run Android parallel test in multiple devices with More than one test running in the same thread.
It shows multiple errors.Could anyone can confirm the capabilities and service start provided are correct. I am really stuck with this. I have to use UIAutomator2 due to the app background putting issue

Sample error :
failed: Connection refused: connect
Build info: version: ‘3.4.0’, revision: ‘unknown’, time: ‘unknown’
System info: host: ‘QA-TESTING’,
ip: ‘192.168.24.114’, os.name: ‘Windows Server 2008 R2’, os.arch: ‘amd64’, os.version: ‘6.1’, java.version: ‘1.8.0_151’
Driver info: driver.version: RemoteWebDriver

Please not that the same set of capabilities and services (except the capability “UiAutomator2” and systemport) were running Appium version 1.7.1. But was extremely slow in performance.

Below are the details of my system config and Capabilities,etc:
node - v6.10.0
Appium - version 1.7.2
java-client - 5.0.0-BETA7

App capability :
AppCap.setCapability(“udid”,sDeviceID);
AppCap.setCapability(“deviceName”, deviceName);
AppCap.setCapability(“browserName”, deviceName);
AppCap.setCapability(“platformVersion”, sPlatformVersion);
AppCap.setCapability(“platformName”, “Android”);
AppCap.setCapability(“appPackage”, “com.testa”);
AppCap.setCapability(“appActivity”, “com.testa.SplashScreen”);
//AppCap.setCapability(“applicationName”, deviceName);
//AppCap.setCapability(“sessionOverride”,true);
AppCap.setCapability(“unicodeKeyboard”, true);
AppCap.setCapability(“clearSystemFiles”, true);
AppCap.setCapability(“newCommandTimeout”,0);
AppCap.setCapability(“automationName”, “UiAutomator2”);
AppCap.setCapability(“systemPort”, Integer.parseInt(mapSystemPort_UIAutomator.get(deviceID)));//Unique available port

Invoking appium service as:
service = AppiumDriverLocalService.buildService(new AppiumServiceBuilder()
.usingDriverExecutable(new File(Constants.NodeJs))
.withAppiumJS(new File(Constants.AppiumJs))
.withIPAddress(IPAddress)
.usingAnyFreePort()
.withArgument(arguments,Integer.toString(iport))//passing unique bootstrap port
.withArgument(GeneralServerFlag.SESSION_OVERRIDE)
.withArgument(GeneralServerFlag.LOG_LEVEL,“error”)
.withStartUpTimeOut(90,TimeUnit.SECONDS)
.withLogFile(appiumLogFile)
);

Driver initialized as :
this.driver = new AndroidDriver(new URL(service.getUrl().toString()),AppCap);

Sample TestNG Xml :

<?xml version="1.0" encoding="UTF-8"?>
<test name="Test1" group-by-instances="true" enabled="true" > 
  <parameter name="deviceId" value="521091a4ea6cc33f" ></parameter>
	<classes>
		<class name="parallelTestSuite.Trial" />
		<class name="parallelTestSuite.Trial7" />
	</classes>
</test>	
 <test name="Test2" group-by-instances="true" enabled="true" > 
  <parameter name="deviceId" value="FA79V1A02919" ></parameter> 
	<classes>
		<class name="parallelTestSuite.Trial2" />
		<class name="parallelTestSuite.Trial8" />
	</classes>
</test>	
 <test name="Test3" group-by-instances="true" enabled="true" > 
  <parameter name="deviceId" value="PSEDU17322003979" ></parameter> 
	<classes>
		<class name="parallelTestSuite.Trial3" />
		<class name="parallelTestSuite.Trial9" />
	</classes>
</test>