Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
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
7 changes: 2 additions & 5 deletions .github/dependabot.yml
Original file line number Diff line number Diff line change
Expand Up @@ -18,11 +18,8 @@ updates:
commit-message:
prefix: "build(deps)"
ignore:
- dependency-name: "org.jlab:groot" # since version numbers are not in order
- dependency-name: "net.objecthunter:exp4j" # pinned for dependency convergence
- dependency-name: "org.ejml:ejml-simple" # pinned for dependency convergence
- dependency-name: "org.apache.commons:commons-lang3" # pinned for dependency convergence
- dependency-name: "org.slf4j:slf4j-api" # pinned for dependency convergence
- dependency-name: "org.jlab:groot" # since clasweb version numbers are not in order
- dependency-name: "org.ejml:ejml-simple" # see https://github.com/JeffersonLab/coatjava/pull/636
- dependency-name: "org.openjfx:javafx-base"
versions: [">= 24"] # version 24 requires JAVA_VERSION 22+
- dependency-name: "org.openjfx:javafx-graphics"
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ env:
RCDB_CONNECTION: 'sqlite:///${{ github.workspace }}/coatjava/etc/data/sqlite/rcdb.sqlite'
nthreads: 1
# Maven 3.9+ reads MAVEN_ARGS automatically, including inside build-coatjava.sh:
# --no-snapshot-updates : don't re-check remote repos (j4ml) for newer SNAPSHOTs;
# --no-snapshot-updates : don't re-check remote repos for newer SNAPSHOTs;
# use whatever `warm_maven_cache` resolved
# retryHandler.count : built-in HTTP retries for transient 403/429/5xx
MAVEN_ARGS: --no-snapshot-updates -Daether.connector.http.retryHandler.count=5
Expand Down
1 change: 0 additions & 1 deletion CODEOWNERS
Original file line number Diff line number Diff line change
Expand Up @@ -79,7 +79,6 @@ reconstruction/ft/ @raffaelladevita
reconstruction/htcc/ @raffaelladevita @baltzell @zieglerv
reconstruction/ltcc/ @raffaelladevita @baltzell @zieglerv @sly2j
reconstruction/mc/ @baltzell @rafopar
reconstruction/mltn/ @gavalian
reconstruction/postproc/ @baltzell
reconstruction/raster/ @raffaelladevita @N-Plx
reconstruction/recoil/ @silvianic
Expand Down
3 changes: 3 additions & 0 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -21,4 +21,7 @@ clean:
clara:
$(BUILD) --clara $(THREADS)

test:
$(BUILD) --unittests $(THREADS)

all: clara
10 changes: 2 additions & 8 deletions build-coatjava.sh
Original file line number Diff line number Diff line change
Expand Up @@ -403,14 +403,8 @@ install_jars() {
for pom in $(find reconstruction -name pom.xml); do
install_jars $pom $prefix_dir/lib/services
done
for pom in $(find common-tools -name pom.xml); do
if [[ "$pom" =~ coat-libs ]]; then
install_jars $pom $prefix_dir/lib/clas 'coat-libs-*.jar'
# else # FIXME, consumers may be need these after https://github.com/JeffersonLab/coatjava/pull/632 ; alternatively add needed deps to `coat-libs`
# install_jars $pom $prefix_dir/lib/services
fi
done

install_jars common-tools/djl-runtime/pom.xml $prefix_dir/lib/services
install_jars common-tools/coat-libs/pom.xml $prefix_dir/lib/clas 'coat-libs-*.jar'
echo "installed coatjava to: $prefix_dir"

# install clara
Expand Down
10 changes: 0 additions & 10 deletions common-tools/coat-libs/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -26,16 +26,6 @@
<artifactId>et</artifactId>
</dependency>

<dependency>
<groupId>j4ml</groupId>
<artifactId>j4ml-neuroph</artifactId>
</dependency>

<dependency>
<groupId>j4ml</groupId>
<artifactId>j4ml-clas12</artifactId>
</dependency>

<dependency>
<groupId>org.jlab.clas</groupId>
<artifactId>clas-io</artifactId>
Expand Down
116 changes: 116 additions & 0 deletions common-tools/djl-runtime/pom.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,116 @@
<?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/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion>

<!--
this POM installs `ai.djl` runtime dependencies to our prefix classpath;
this includes its transitive dependencies, e.g. `gson` and `slf4j`
-->

<artifactId>djl-runtime</artifactId>
<packaging>pom</packaging>

<parent>
<groupId>org.jlab.clas</groupId>
<artifactId>common-tools</artifactId>
<version>14.2.3-SNAPSHOT</version>
</parent>

<properties>
<!-- Native PyTorch classifier; overridden per-OS by the profiles below -->
<djl.pytorch.classifier>linux-x86_64</djl.pytorch.classifier>
</properties>

<profiles>
<!-- Linux x86_64 is the default via the property above; this profile exists only to make the choice explicit/overridable -->
<profile>
<id>djl-linux-x86_64</id>
<activation>
<os>
<family>unix</family>
<name>Linux</name>
<arch>amd64</arch>
</os>
</activation>
<properties>
<djl.pytorch.classifier>linux-x86_64</djl.pytorch.classifier>
</properties>
</profile>
<profile>
<id>djl-osx-aarch64</id>
<activation>
<os>
<family>mac</family>
<arch>aarch64</arch>
</os>
</activation>
<properties>
<djl.pytorch.classifier>osx-aarch64</djl.pytorch.classifier>
</properties>
</profile>
<profile>
<id>djl-win-x86_64</id>
<activation>
<os>
<family>windows</family>
<arch>amd64</arch>
</os>
</activation>
<properties>
<djl.pytorch.classifier>win-x86_64</djl.pytorch.classifier>
</properties>
</profile>
</profiles>

<dependencies>
<dependency>
<groupId>ai.djl</groupId>
<artifactId>api</artifactId>
</dependency>
<dependency>
<groupId>ai.djl</groupId>
<artifactId>model-zoo</artifactId>
</dependency>
<dependency>
<groupId>ai.djl.pytorch</groupId>
<artifactId>pytorch-model-zoo</artifactId>
</dependency>
<dependency>
<groupId>ai.djl.pytorch</groupId>
<artifactId>pytorch-engine</artifactId>
</dependency>
<dependency>
<groupId>ai.djl.pytorch</groupId>
<artifactId>pytorch-native-cpu</artifactId>
<classifier>${djl.pytorch.classifier}</classifier>
</dependency>
<dependency>
<groupId>ai.djl.pytorch</groupId>
<artifactId>pytorch-jni</artifactId>
</dependency>
</dependencies>

<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-dependency-plugin</artifactId>
<version>3.11.0</version>
<executions>
<execution>
<id>copy-djl-runtime</id>
<phase>package</phase>
<goals>
<goal>copy-dependencies</goal>
</goals>
<configuration>
<outputDirectory>${project.build.directory}/lib/services</outputDirectory>
<includeScope>runtime</includeScope>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>

</project>
1 change: 1 addition & 0 deletions common-tools/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -29,6 +29,7 @@
<module>clara-io</module>
<module>clas-tracking</module>
<module>clas-decay-tools</module>
<module>djl-runtime</module>
<module>coat-libs</module>
</modules>

Expand Down
75 changes: 31 additions & 44 deletions etc/services/kpp.yaml
Original file line number Diff line number Diff line change
@@ -1,10 +1,17 @@
io-services:
reader:
class: org.jlab.io.clara.Clas12Reader
name: Clas12Reader
writer:
class: org.jlab.io.clara.Clas12Writer
name: Clas12Writer
configuration:
services:
MAGFIELDS:
magfieldSolenoidMap: Symm_solenoid_r601_phi1_z1201_13June2018.dat
magfieldTorusMap: Full_torus_r251_phi181_z251_25Jan2021.dat
DCCR:
rawBankGroup: "NODENOISE"
DCHTAI:
outputBankPrefix: "AI"
DCTAI:
outputBankPrefix: "AI"
EBTAI:
outputBankPrefix: "RECAI"

services:
- class: org.jlab.clas.reco.DecoderEngine
name: DECO
Expand All @@ -20,18 +27,16 @@ services:
name: FTEB
- class: org.jlab.service.raster.RasterEngine
name: RASTER
# DC clustering: nominal algoritm, filled the cluster bank for ai and conventional tracking
- class: org.jlab.service.ai.DCDenoiseEngine
name: DCDN
- class: org.jlab.service.dc.DCHBClustering
name: DCCR
# This is where the AI plugin would go. THe AI code reads the HB clusters.
- class: org.jlab.service.mltn.MLTDEngine
name: MLTD
# DC using clustering: regular HB tracking
- class: org.jlab.service.ai.DCClsComboEngine
name: DCCC
- class: org.jlab.service.dc.DCHBPostClusterConv
name: DCHB
# DC using clustering on AI hits: NN assisted HB tracking
- class: org.jlab.service.dc.DCHBPostClusterAI
name: DCHAI
- class: org.jlab.service.dc.DCHBTrackingAI
name: DCHTAI
- class: org.jlab.service.ftof.FTOFHBEngine
name: FTOFHB
- class: org.jlab.service.ec.ECEngine
Expand Down Expand Up @@ -72,36 +77,18 @@ services:
name: RICH
- class: org.jlab.service.rtpc.RTPCEngine
name: RTPC
- class: org.jlab.rec.service.vtx.VTXEngine
name: VTX
- class: org.jlab.calibration.service.CalibBanksEngine
name: CALIB
configuration:
services:
MAGFIELDS:
magfieldSolenoidMap: Symm_solenoid_r601_phi1_z1201_13June2018.dat
magfieldTorusMap: Symm_torus_r2501_phi16_z251_24Apr2018.dat
# examples of yaml settings for magfields
# magfieldSolenoidShift: "0.0"
# magfieldTorusXShift: "0.0"
# magfieldTorusYShift: "0.0"
# magfieldTorusZShift: "0.0"
# examples of yaml settings for DC services
# DCRC:
# dcGeometryVariation: rga_spring2018
# dcT2DFunc: "Polynomial"
# dcWireDistortion: "true"
# example of how to set variation and timestamp for a service, uncomment to use
# EBTB:
# variation: default
# timestamp: 08/22/2018
DCCR:
dcT2DFunc: "Exponential"
DCHB:
dcT2DFunc: "Exponential"
DCHAI:
dcT2DFunc: "Exponential"
DCTB:
dcT2DFunc: "Exponential"
DCTAI:
dcT2DFunc: "Exponential"

io-services:
reader:
class: org.jlab.io.clara.Clas12Reader
name: Clas12Reader
writer:
class: org.jlab.io.clara.Clas12Writer
name: Clas12Writer

mime-types:
- binary/data-hipo
Loading
Loading