6 Commits

Author SHA1 Message Date
4eee23f081 Run on GPU
Some checks failed
MetagraphOptimization_CI / docs (push) Failing after 5m43s
MetagraphOptimization_CI / test (push) Failing after 6m2s
2024-07-09 23:19:25 +02:00
dee44dad66 Small fixes
Some checks failed
MetagraphOptimization_CI / test (push) Failing after 1m31s
MetagraphOptimization_CI / docs (push) Failing after 1m38s
2024-07-05 02:15:03 +02:00
b784720859 Minor fixes and commints 2024-07-04 20:40:22 +02:00
813d40cd30 Working state
Some checks failed
MetagraphOptimization_CI / docs (push) Failing after 1m40s
MetagraphOptimization_CI / test (push) Failing after 1m47s
2024-07-04 20:24:39 +02:00
92f534f6bf Fix congruent ph script
Some checks failed
MetagraphOptimization_CI / test (push) Failing after 1m35s
MetagraphOptimization_CI / docs (push) Failing after 1m39s
2024-07-04 17:03:18 +02:00
55501c15c8 WIP 2024-07-04 15:41:13 +02:00
10 changed files with 37 additions and 185 deletions

4
.gitattributes vendored
View File

@ -1,5 +1,3 @@
input/AB->ABBBBBBBBB.txt filter=lfs diff=lfs merge=lfs -text
input/AB->ABBBBBBB.txt filter=lfs diff=lfs merge=lfs -text
*.zip filter=lfs diff=lfs merge=lfs
*.gif filter=lfs diff=lfs merge=lfs
*.jld2 filter=lfs diff=lfs merge=lfs
*.zip filter=lfs diff=lfs merge=lfs -text

Binary file not shown.

File diff suppressed because one or more lines are too long

BIN
results/1_congruent_photons_grid.jld2 (Stored with Git LFS)

Binary file not shown.

BIN
results/2_congruent_photons_grid.jld2 (Stored with Git LFS)

Binary file not shown.

BIN
results/3_congruent_photons_grid.jld2 (Stored with Git LFS)

Binary file not shown.

BIN
results/4_congruent_photons_grid.jld2 (Stored with Git LFS)

Binary file not shown.

BIN
results/5_congruent_photons_grid.jld2 (Stored with Git LFS)

Binary file not shown.

View File

@ -1,12 +1,25 @@
# patch QEDprocesses
# see issue https://github.com/QEDjl-project/QEDprocesses.jl/issues/77
@inline function QEDprocesses.number_particles(
proc_def::QEDbase.AbstractProcessDefinition, ::Type{PS}
proc_def::QEDbase.AbstractProcessDefinition,
::Type{PS},
) where {
DIR<:QEDbase.ParticleDirection,
PT<:QEDbase.AbstractParticleType,
EL<:AbstractFourMomentum,
PS<:ParticleStateful{DIR,PT,EL},
DIR <: QEDbase.ParticleDirection,
PT <: QEDbase.AbstractParticleType,
EL <: AbstractFourMomentum,
PS <: ParticleStateful{DIR, PT, EL},
}
return QEDprocesses.number_particles(proc_def, DIR(), PT())
end
@inline function QEDcore.ParticleStateful{DIR, SPECIES}(
mom::AbstractFourMomentum,
) where {DIR <: ParticleDirection, SPECIES <: AbstractParticleType}
return ParticleStateful(DIR(), SPECIES(), mom)
end
@inline function QEDcore.ParticleStateful{DIR, SPECIES, EL}(
mom::EL,
) where {DIR <: ParticleDirection, SPECIES <: AbstractParticleType, EL <: AbstractFourMomentum}
return ParticleStateful(DIR(), SPECIES(), mom)
end

View File

@ -16,7 +16,9 @@ function get_compute_function(graph::DAG, instance, machine::Machine)
"function compute_$(functionId)(data_input::$(input_type(instance))) $(initCaches); $(assignInputs); $code; return $resSym; end",
)
return expr
func = eval(expr)
return func
end
"""
@ -33,22 +35,22 @@ function get_cuda_kernel(graph::DAG, instance, machine::Machine)
functionId = to_var_name(UUIDs.uuid1(rng[1]))
resSym = eval(gen_access_expr(entry_device(tape.machine), tape.outputSymbol))
expr = Meta.parse(
"function compute_$(functionId)(input_vector, output_vector, n::Int64)
id = (blockIdx().x - 1) * blockDim().x + threadIdx().x
if (id > n)
return
end
@inline data_input = input_vector[id]
$(initCaches)
$(assignInputs)
$code
@inline output_vector[id] = $resSym
return nothing
end"
)
expr = Meta.parse("function compute_$(functionId)(input_vector, output_vector, n::Int64)
id = (blockIdx().x - 1) * blockDim().x + threadIdx().x
if (id > n)
return
end
@inline data_input = input_vector[id]
$(initCaches)
$(assignInputs)
$code
@inline output_vector[id] = $resSym
return nothing
end")
return expr
func = eval(expr)
return func
end
"""