Troubleshooting PI ACE Calculations Stuck in "Starting" State: A Step-by-Step Guide
Learn how to systematically troubleshoot PI ACE calculations that remain in the "Starting" state and diagnose issues such as the PIACEClassLibraryHost.exe process not spawning.
Roshan Soni
Troubleshooting PI ACE Calculations Stuck in "Starting" State
PI ACE (Advanced Computing Engine) is a powerful calculation engine frequently used in PI System environments for automated data processing. Occasionally, users encounter a frustrating situation: newly deployed calculations remain in the "Starting" state and don't execute as expected. This blog post explores common causes of this issue and provides a structured troubleshooting approach for PI System administrators and developers.
Scenario Overview
A typical case involves a developer who successfully creates and deploys a PI ACE calculation using Visual Studio, then registers it in PI ACE Manager. However, upon checking PI ACE Manager, the calculation status stubbornly stays on "Starting" instead of transitioning to the green "Running" state. A deeper dive into Task Manager reveals the expected PI ACE components (e.g., PIACEManager, piacenetscheduler.exe) but the crucial PIACEClassLibraryHost.exe process—the one responsible for executing the calculation DLL—is conspicuously missing.
Let's look at logical troubleshooting steps and best practices for resolving this type of situation.
1. Verify PI Trusts for All ACE Components
A common culprit is incomplete or misconfigured PI Trusts. Every PI ACE component that connects to the PI Server—including the ACE Scheduler (piacenetscheduler.exe), the calculation host (PIACEClassLibraryHost.exe), and the ACE executable itself—must have appropriate trust configured on the PI Server.
Action Steps:
- In PI System Management Tools (SMT), ensure you have trusts configured for:
piacenetscheduler.exePIACEClassLibraryHost.exe- the PI ACE calculation user (if running under a dedicated account)
- Double-check the trust parameters: IP address/range, application name, and user mapping.
- See: OSIsoft KB00516 - PI ACE calculations remain in the "Starting" or "Stopping" state
2. Check If the Host Process (PIACEClassLibraryHost.exe) Spawns
The PI ACE Scheduler should automatically launch PIACEClassLibraryHost.exe whenever it needs to execute a calculation. If this process isn't appearing in Task Manager:
Action Steps:
- Restart the PI ACE Scheduler service (
piacenetscheduler.exe). Use Windows Services manager or the command prompt. - Watch Task Manager and Event Viewer for errors when attempting to start new calculations.
- Verify that your deployed calculation DLLs are placed in the correct directory (
PIACEin) and registered properly.
3. Check for PI ACE Version Compatibility and .NET Issues
Incorrect .NET versions or mismatched PI ACE installation files can block proper calculation hosting.
Action Steps:
- Ensure your development environment (e.g., Visual Studio 2013) generates DLLs compatible with your deployed PI ACE version.
- Verify .NET version compatibility listed in the PI ACE release notes and documentation.
- If possible, rebuild your calculation project targeting the correct .NET framework (commonly .NET 3.5 or 4.0 for legacy ACE).
4. Consult OSIsoft Documentation and Support
If all else fails, OSIsoft's resources are invaluable:
- Troubleshooting PI ACE. v2.1.8 - YouTube.
- Knowledge base articles and the PI Square Community.
- OSIsoft Tech Support can schedule a remote session for advanced diagnostics.
Summary
Resolving stuck PI ACE calculations is a process of elimination: double-check PI Trusts, confirm the host process is spawning, validate compatibility, and don't hesitate to engage support for persistent issues. With structured troubleshooting, you can get your PI ACE calculations back to green and running smoothly!
Do you have more PI ACE troubleshooting tips or war stories? Share them in the comments below!
Tags
About Roshan Soni
Expert in PI System implementation, industrial automation, and data management. Passionate about helping organizations maximize the value of their process data through innovative solutions and best practices.
No comments yet
Be the first to share your thoughts on this article.
Related Articles
Enhancing PI ProcessBook Trends with Banding and Zones: User Needs, Workarounds, and the Road Ahead
A look at the user demand for trend banding/zoning in OSIsoft PI ProcessBook, current VBA workarounds, UI challenges, and how future PI Vision releases aim to address these visualization needs.
Roshan Soni
Migrating PIAdvCalcFilVal Uptime Calculations from PI DataLink to PI OLEDB
Learn how to translate PI DataLink's PIAdvCalcFilVal advanced calculations—like counting uptime based on conditions—into efficient PI OLEDB SQL queries. Explore three practical approaches using PIAVG, PIINTERP, and PICOunt tables, and get tips for validation and accuracy.
Roshan Soni
Understanding PI Web API WebID Encoding: Can You Generate WebIDs Client-Side?
Curious about how PI Web API generates WebIDs and whether you can encode them client-side using GUIDs or paths? This article explores the encoding mechanisms, current documentation, and best practices for handling WebIDs in your applications.
Roshan Soni