Excited to share that we will be presenting at the ICPE 2026 Workshop (WEPPE) on May 4th in Florence, Italy.
Our talk, "Detecting past and future change points in performance data for education and practice", focuses on practical approaches to identifying performance anomalies and change points—both retrospectively and predictively.
The presentation will also cover the core principles behind the Perfomalist app (www.perfomalist.com), demonstrating how these methods can be applied in real-world IT capacity management and performance analysis scenarios. Looking forward to engaging discussions with researchers and practitioners in performance engineering!
ABSTRACT:
Typical tasks in performance engineering education and
practice include anomaly detection, outlier detection, change
point detection, and trend analysis, with the goal of anticipating
future threshold breaches and capacity risks. This paper
presents Statistical Exception and Trend Detection (SETDS), a
method for detecting both past and future change points in
performance time series and discusses its use as both an
analytical technique and a teaching tool.
The paper provides an intuitive yet rigorous description of the
SETDS method and demonstrates its practical application
through Perfomalist, a free web-based tool that implements the
approach. Perfomalist enables students and practitioners to
visualize anomalies, trends, and change points using IT Control
Charts and Exception Values, making advanced concepts in
performance analysis more accessible. Perfomalist was also
used as a baseline tool in a CMG.org Hackathon, where
participants were tasked with identifying change points and
anomalies in time-stamped performance data to reveal distinct
phases and patterns. Finally, the method and tool have been
successfully used in an online course on Performance Anomaly
Detection offered through CMG.org, illustrating how real-world
performance data and tooling can be effectively integrated into
performance engineering education.
1. **Display the raw API response** - so you can see all data returned
2. **Parse the response** - extract change points from the API output
3. **Rank by significance** - identify the most important change points
4. **Show top 3 change points** - with all relevant metrics
### Example Output
```
======================================================================
Perfomalist API - Change Point Detection
======================================================================
Using sample data...
Loaded 24 data points
Calling Perfomalist API...
API Response received
----------------------------------------------------------------------
[API response displayed here]
----------------------------------------------------------------------
Found 15 total data points in response
======================================================================
TOP 3 MOST SIGNIFICANT CHANGE POINTS:
======================================================================
# Parse and find top change points
response_df <- parse_response(response_text)
top_3 <- find_top_changepoints(response_df, top_n = 3)
print(top_3)
```
## Troubleshooting
### API Returns Error
- Check your internet connection
- Verify the API endpoint is accessible: www.perfomalist.com
- Ensure your data format matches the expected CSV structure
### No Change Points Found
- Try adjusting the `eValue` parameter (lower = more sensitive)
- Check if your data has enough variation
- Verify the `baseline_length` is appropriate for your data frequency
### Parsing Issues
- The script will display the raw API response for manual inspection
- Check that column names in the response match expected patterns
- You may need to customize the parsing logic based on the actual API response
format
## API Response Format Note
The actual response format from the Perfomalist API may vary. The programs
include flexible parsing logic to handle common formats, but you may need to
inspect the raw response and adjust the parsing if the format differs from
expectations.
## More Information
- Website: www.perfomalist.com
- Download sample data and documentation from the website
## License
These scripts are provided as-is for use with the Perfomalist API service.
_______________
Below is the quick graphical validation showing where the 3 change points were found:
Below is a task I gave to Claude (https://claude.ai/). It took about 10 minutes to generate client applications in both Python and R.
Prompt:
Here is the task for you. There is a Perfomalist API described below. I need a program (in Python or R) that calls the API to identify the three most significant change points in date-stamped data.
I'll create a Python
program to call the Perfomalist API and find the 3 most significant change
points. Let me start by reading the relevant skills for this task.
Check available skills
for API work and data handling
Now I'll create a
Python program that calls the Perfomalist API to find change points:
Create Python script
to call Perfomalist API and find top 3 change points
Now let me create an R
version as well:
Create R script to
call Perfomalist API and find top 3 change points
Now let me create a
README with usage instructions:
Create README with
usage instructions
Now let me create a
sample data file you can use for testing:
Create sample CSV data
file for testing
Perfect! Now let me
move all the files to the outputs directory:
Ran a command, read a
file
Perfect! I've created
complete programs in both Python and R to
call the Perfomalist API and find the 3 most significant change points. Here's
what you get:
Objective: The goal of this hackathon is to identify change points and/or anomalies within a provided time-stamped dataset. This analysis will reveal distinct phases and patterns within the data.
Tools and Methods:
Participants are encouraged to utilize any tools, libraries, or packages (e.g., R, Python) for change point and anomaly detection.
Alternatively, participants can use the free Change Point Detection API via Postman (postman.com), as detailed below.
ABSTRACT: The MASF/SETDS method of detecting changes and anomalies in performance data, its recent implementation and the way to use and interpret the results will be presented with real examples against MangoDB testing data.
Since 1995, a time when the CMG conference published a very influential paper about the MASF method of anomaly detection, this topic has been increasingly more popular in the area of Capacity and Performance management. The modification of the MASF – SETDS method – was introduced in the 2002 CMG best paper and then got implemented in several companies and applications. This included the CMG online class “Perfomalies (Performance Anomaly) Detection”. Most recently this method has been turned into the cloud based serverless API microservice which is available for free via “Perfomalist” web app. The Perfomalist change points detection API was used against MongoDB’s testing data and got acceptable results which were published in the SPEC.org 2022 conference. This paper included an additional post-processing algorithm (XGBoost) to eliminate false positives which is planned to be added to Perfomalist service.