Skip to content

Benchmarks and performance improvements #272

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
wants to merge 31 commits into from
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
31 commits
Select commit Hold shift + click to select a range
26dbfc6
benchmark
hmottestad Jul 27, 2023
519a66d
split up code
hmottestad Jul 27, 2023
0ea6f4e
update benchmark
hmottestad Jul 27, 2023
17f4039
add an oom benchmark
hmottestad Jul 31, 2023
bad995d
add more benchmarks
hmottestad Jul 31, 2023
ec54540
small files benchmark
hmottestad Aug 2, 2023
dd3a529
improve node map builder
hmottestad Jul 27, 2023
5528768
small improvements
hmottestad Jul 27, 2023
3a68734
more improvements
hmottestad Jul 27, 2023
c2201cd
more optimizations
hmottestad Jul 27, 2023
fac6b5c
more optimizations
hmottestad Jul 27, 2023
e92bf78
more caching of absolute iri
hmottestad Jul 31, 2023
59fb126
update benchmark results
hmottestad Jul 31, 2023
826bfcd
Modifiable JsonArray
hmottestad Aug 1, 2023
7c8a90d
more performance improvements based on https://github.com/umbreak/jso…
hmottestad Aug 2, 2023
3eed708
very very minor performance improvements
hmottestad Aug 2, 2023
48442a6
Update benchmark results
hmottestad Aug 2, 2023
68add68
cache uri, reorder if args, faster prefix lookup
hmottestad Aug 3, 2023
40ed16e
custom URI validator
hmottestad Aug 13, 2023
353975a
inline methods
hmottestad Aug 13, 2023
bbbecc3
use codePointCount
hmottestad Aug 13, 2023
bfd9b0f
various code cleanup
hmottestad Aug 13, 2023
f1dbbaf
sets and maps default size 1
hmottestad Aug 14, 2023
887ed47
GH-273 add benchmarks
hmottestad Aug 15, 2023
672c718
Merge pull request #1 from HASMAC-AS/GH-273-add-benchmark
hmottestad Oct 24, 2023
802bfa7
Merge branch 'main' into benchmark-and-performance
hmottestad Oct 24, 2023
0f25b60
update workflows
hmottestad Oct 24, 2023
f326845
comment out sonarcloud
hmottestad Oct 24, 2023
b05a923
Merge branch 'main' into benchmark-and-performance
hmottestad Oct 24, 2023
6508b47
comment out android build because it is failing
hmottestad Oct 24, 2023
34ee86a
Merge branch 'main' into benchmark-and-performance
hmottestad Oct 24, 2023
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
79 changes: 0 additions & 79 deletions .github/workflows/codeql.yml

This file was deleted.

Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
# This workflow will build a Java project with Maven
# For more information see: https://help.github.com/actions/language-and-framework-guides/building-and-testing-java-with-maven

name: Codacy Coverrage
name: Java 11 CI

on:
push:
pull_request:
branches: [ main ]

jobs:
Expand All @@ -14,14 +14,9 @@ jobs:

steps:
- uses: actions/checkout@v2
- name: Set up JDK 11
- name: Set up JDK 21
uses: actions/setup-java@v1
with:
java-version: 11
java-version: 21
- name: Build with Maven
run: mvn -B package jacoco:report --file pom.xml
- name: Run codacy-coverage-reporter
uses: codacy/codacy-coverage-reporter-action@master
with:
project-token: ${{secrets.CODACY_PROJECT_TOKEN}}
coverage-reports: ./target/site/jacoco/jacoco.xml
run: ./mvnw -B package
45 changes: 23 additions & 22 deletions .github/workflows/java8-build.yml
Original file line number Diff line number Diff line change
@@ -1,22 +1,23 @@
# This workflow will build a Java project with Maven
# For more information see: https://help.github.com/actions/language-and-framework-guides/building-and-testing-java-with-maven

name: Android (Java 8) CI

on:
pull_request:
branches: [ main ]

jobs:
build:

runs-on: ubuntu-latest

steps:
- uses: actions/checkout@v2
- name: Set up JDK 1.8
uses: actions/setup-java@v1
with:
java-version: 1.8
- name: Build with Maven
run: ./mvnw -f pom_jre8.xml -B package
## This workflow will build a Java project with Maven
## For more information see: https://help.github.com/actions/language-and-framework-guides/building-and-testing-java-with-maven
#
#name: Android (Java 8) CI
#
#on:
# pull_request:
# branches: [ main ]
#
#jobs:
# build:
#
# runs-on: ubuntu-latest
#
# steps:
# - uses: actions/checkout@v2
# - name: Set up JDK 1.8
# uses: actions/setup-java@v1
# with:
# java-version: 1.8
# - name: Build with Maven
# run: ./mvnw -f pom_jre8.xml -B package
#
69 changes: 35 additions & 34 deletions .github/workflows/sonarcloud.yml
Original file line number Diff line number Diff line change
@@ -1,34 +1,35 @@
name: SonarCloud
on:
push:
branches:
- main
jobs:
build:
name: Build
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
with:
fetch-depth: 0 # Shallow clones should be disabled for a better relevancy of analysis
- name: Set up JDK 11
uses: actions/setup-java@v1
with:
java-version: 11
- name: Cache SonarCloud packages
uses: actions/cache@v1
with:
path: ~/.sonar/cache
key: ${{ runner.os }}-sonar
restore-keys: ${{ runner.os }}-sonar
- name: Cache Maven packages
uses: actions/cache@v1
with:
path: ~/.m2
key: ${{ runner.os }}-m2-${{ hashFiles('**/pom.xml') }}
restore-keys: ${{ runner.os }}-m2
- name: Build and analyze
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} # Needed to get PR information, if any
SONAR_TOKEN: ${{ secrets.SONAR_TOKEN }}
run: mvn -B verify org.sonarsource.scanner.maven:sonar-maven-plugin:sonar
#name: SonarCloud
#on:
# push:
# branches:
# - main
#jobs:
# build:
# name: Build
# runs-on: ubuntu-latest
# steps:
# - uses: actions/checkout@v2
# with:
# fetch-depth: 0 # Shallow clones should be disabled for a better relevancy of analysis
# - name: Set up JDK 11
# uses: actions/setup-java@v1
# with:
# java-version: 11
# - name: Cache SonarCloud packages
# uses: actions/cache@v1
# with:
# path: ~/.sonar/cache
# key: ${{ runner.os }}-sonar
# restore-keys: ${{ runner.os }}-sonar
# - name: Cache Maven packages
# uses: actions/cache@v1
# with:
# path: ~/.m2
# key: ${{ runner.os }}-m2-${{ hashFiles('**/pom.xml') }}
# restore-keys: ${{ runner.os }}-m2
# - name: Build and analyze
# env:
# GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} # Needed to get PR information, if any
# SONAR_TOKEN: ${{ secrets.SONAR_TOKEN }}
# run: mvn -B verify org.sonarsource.scanner.maven:sonar-maven-plugin:sonar
#
48 changes: 24 additions & 24 deletions pom.xml
Original file line number Diff line number Diff line change
@@ -1,26 +1,26 @@
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>com.apicatalog</groupId>
<artifactId>titanium</artifactId>
<version>1.3.3-SNAPSHOT</version>
<relativePath>pom_parent.xml</relativePath>
</parent>
<artifactId>titanium-json-ld</artifactId>
<packaging>jar</packaging>
<name>Titanium JSON-LD 1.1 (JRE11)</name>
<url>https://github.com/filip26/titanium-json-ld</url>
<scm>
<connection>scm:git:git://github.com/filip26/titanium-json-ld.git</connection>
<developerConnection>scm:git:git://github.com/filip26/titanium-json-ld.git</developerConnection>
<url>https://github.com/filip26/titanium-json-ld/tree/main</url>
</scm>
<properties>
<maven.compiler.target>11</maven.compiler.target>
<maven.compiler.source>11</maven.compiler.source>
<envSources>src/main/java11</envSources>
</properties>
</project>
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>com.apicatalog</groupId>
<artifactId>titanium</artifactId>
<version>1.3.3-SNAPSHOT</version>
<relativePath>pom_parent.xml</relativePath>
</parent>
<artifactId>titanium-json-ld</artifactId>
<packaging>jar</packaging>
<name>Titanium JSON-LD 1.1 (JRE11)</name>
<url>https://github.com/filip26/titanium-json-ld</url>
<scm>
<connection>scm:git:git://github.com/filip26/titanium-json-ld.git</connection>
<developerConnection>scm:git:git://github.com/filip26/titanium-json-ld.git</developerConnection>
<url>https://github.com/filip26/titanium-json-ld/tree/main</url>
</scm>
<properties>
<maven.compiler.target>11</maven.compiler.target>
<maven.compiler.source>11</maven.compiler.source>
<envSources>src/main/java11</envSources>
</properties>
</project>
62 changes: 31 additions & 31 deletions pom_jre8.xml
Original file line number Diff line number Diff line change
@@ -1,33 +1,33 @@
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>com.apicatalog</groupId>
<artifactId>titanium</artifactId>
<version>1.3.3-SNAPSHOT</version>
<relativePath>pom_parent.xml</relativePath>
</parent>
<artifactId>titanium-json-ld-jre8</artifactId>
<packaging>jar</packaging>
<name>Titanium JSON-LD 1.1 (JRE8)</name>
<url>https://github.com/filip26/titanium-json-ld</url>
<scm>
<connection>scm:git:git://github.com/filip26/titanium-json-ld.git</connection>
<developerConnection>scm:git:git://github.com/filip26/titanium-json-ld.git</developerConnection>
<url>https://github.com/filip26/titanium-json-ld/tree/main</url>
</scm>
<properties>
<maven.compiler.target>1.8</maven.compiler.target>
<maven.compiler.source>1.8</maven.compiler.source>
<envSources>src/main/android</envSources>
</properties>
<dependencies>
<dependency>
<groupId>com.squareup.okhttp3</groupId>
<artifactId>okhttp</artifactId>
<version>4.10.0</version>
</dependency>
</dependencies>
</project>
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>com.apicatalog</groupId>
<artifactId>titanium</artifactId>
<version>1.3.3-SNAPSHOT</version>
<relativePath>pom_parent.xml</relativePath>
</parent>
<artifactId>titanium-json-ld-jre8</artifactId>
<packaging>jar</packaging>
<name>Titanium JSON-LD 1.1 (JRE8)</name>
<url>https://github.com/filip26/titanium-json-ld</url>
<scm>
<connection>scm:git:git://github.com/filip26/titanium-json-ld.git</connection>
<developerConnection>scm:git:git://github.com/filip26/titanium-json-ld.git</developerConnection>
<url>https://github.com/filip26/titanium-json-ld/tree/main</url>
</scm>
<properties>
<maven.compiler.target>1.8</maven.compiler.target>
<maven.compiler.source>1.8</maven.compiler.source>
<envSources>src/main/android</envSources>
</properties>
<dependencies>
<dependency>
<groupId>com.squareup.okhttp3</groupId>
<artifactId>okhttp</artifactId>
<version>4.10.0</version>
</dependency>
</dependencies>
</project>
Loading