Error occurs when running parallel test on multiple real devices

After I run a few parallel tests on real devices, error will occur: abnormal instrument termination.
Below is a part of my implementation:

public class LogonFlow.java {
    @BeforeClass
    @Parameters({ "tempDir" })
	public void setup(final String tempDir) {
		this.service = AppiumDriverLocalService.buildService(new AppiumServiceBuilder()
				.withAppiumJS(new File("/Applications/appium.app/Contents/Resources/node_modules/appium/build/lib/main.js"))
				.withArgument(GeneralServerFlag.TEMP_DIRECTORY, tempDir)
				.withArgument(GeneralServerFlag.SESSION_OVERRIDE)
				.usingAnyFreePort()
				.withArgument(GeneralServerFlag.LOG_LEVEL, "info"));
		this.service.start();
	}

   	@BeforeMethod
	@Parameters({ "udid", "deviceName", "platformVersion" })
	public void beforeMethod(final String tempDir, final String udid, final String deviceName, final String platformVersion) {
		this.driver = new AppiumIOSDriver(service.getUrl().toExternalForm(), udid,
				deviceName, platformVersion);
	}

        @AfterMethod
	public void afterMethod() {
		this.driver.destroy();
		this.driver = null;
	}
        @AfterClass
	public void shutdown() {
		if (this.service != null && this.service.isRunning()) {
			this.service.stop();
		}
		this.service = null;
    }
}

public class AppiumIOSDriver {
    	
    public AppiumIOSDriver(final String url, final String udid, final String deviceName, final String platformVersion) {
	DesiredCapabilities capabilities = new DesiredCapabilities();
	capabilities.setCapability("platformName", "IOS");
	capabilities.setCapability("udid", udid);
	capabilities.setCapability("deviceName", deviceName);
            capabilities.setCapability("platformVersion", platformVersion);
	capabilities.setCapability("noReset", true);
	capabilities.setCapability("newCommandTimeout", 5);
	capabilities.setCapability("app", "/Users/shappysay/ChockieWork/deviceCloud/src/test/resources/app/HSBCMobile.app");
	try {
		this.iosDriver = new IOSDriver<WebElement>(new URL(url), capabilities);
	} catch (MalformedURLException e) {
		// TODO Auto-generated catch block
		e.printStackTrace();
	}
    }
}

Could anyone figure out what’s wrong?

Can you share the gist of the logs ?

An unknown server-side error occurred while processing the command. Original error: Abnormal Instruments termination!

The wired thing is the error will not occur when running one real device

This might be because the Xcode was not able to pick your devices properly… open xcode and try
(cmd+shift+2) to view thr list of devices… and see if there is something abnormal

No…There are not any errors or warnings…And sometimes I have to restart the device, otherwise the app can not be installed. I am going to try the new version appium to see whether it contains the same problem.