Files
2024-01-18 09:46:32 +01:00

56 lines
2.1 KiB
SQL

ALTER TABLE "${tableName}" ADD COLUMN family TEXT;
ALTER TABLE "${tableName}" ADD COLUMN mode TEXT;
ALTER TABLE "${tableName}" ADD COLUMN vectorization TEXT;
ALTER TABLE "${tableName}" ADD COLUMN fixture TEXT;
ALTER TABLE "${tableName}" ADD COLUMN s FLOAT;
ALTER TABLE "${tableName}" ADD COLUMN n_threads INTEGER;
ALTER TABLE "${tableName}" ADD COLUMN n_partitions INTEGER;
ALTER TABLE "${tableName}" ADD COLUMN n_elements_build INTEGER;
ALTER TABLE "${tableName}" ADD COLUMN n_elements_lookup INTEGER;
ALTER TABLE "${tableName}" ADD COLUMN shared_elements FLOAT;
ALTER TABLE "${tableName}" ADD COLUMN construction_throughput FLOAT;
ALTER TABLE "${tableName}" ADD COLUMN lookup_throughput FLOAT;
WITH SplitValues AS (
SELECT
name,
SPLIT_PART(name, '_', 1) AS family,
SPLIT_PART(name, '_', 2) AS mode,
SPLIT_PART(name, '_', 4) AS vectorization,
SPLIT_PART(name, '/', 2) AS fixture,
CAST(SPLIT_PART(name, '/', 3) AS FLOAT) / 100 AS s,
CAST(SPLIT_PART(name, '/', 4) AS INTEGER) AS n_threads,
CAST(SPLIT_PART(name, '/', 5) AS INTEGER) AS n_partitions,
CAST(SPLIT_PART(name, '/', 6) AS FLOAT) AS n_elements_build,
CAST(SPLIT_PART(name, '/', 7) AS FLOAT) AS n_elements_lookup,
CAST(SPLIT_PART(name, '/', 8) AS FLOAT) / 100 AS shared_elements
FROM "${tableName}")
UPDATE "${tableName}" AS t
SET
family = sv.family,
mode = sv.mode,
vectorization = sv.vectorization,
fixture = sv.fixture,
s = sv.s,
n_threads = sv.n_threads,
n_partitions = sv.n_partitions,
n_elements_build = sv.n_elements_build,
n_elements_lookup = sv.n_elements_lookup,
shared_elements = sv.shared_elements
FROM SplitValues AS sv
WHERE t.name = sv.name;
UPDATE "${tableName}"
SET "lookup_throughput" = (n_elements_lookup * 1000.0) / real_time
WHERE real_time IS NOT NULL AND real_time != 0;
UPDATE "${tableName}"
SET "construction_throughput" = (n_elements_build * 1000.0) / real_time
WHERE real_time IS NOT NULL AND real_time != 0;
DELETE from "${tableName}" where "task-clock" == 'NaN';
UPDATE "${tableName}" as t
SET fpr = 'NaN'
WHERE fpr = -1;