mirror of https://github.com/sveltejs/svelte
parent
396ea2ef37
commit
18751cc381
@ -0,0 +1 @@
|
||||
output
|
||||
@ -1,5 +1,5 @@
|
||||
import { assert, fastest_test } from '../../utils.js';
|
||||
import * as $ from '../../../packages/svelte/src/internal/client/index.js';
|
||||
import { assert, fastest_test } from '../../../utils.js';
|
||||
import * as $ from 'svelte/internal/client';
|
||||
import { busy } from './util.js';
|
||||
|
||||
function setup() {
|
||||
@ -1,5 +1,5 @@
|
||||
import { assert, fastest_test } from '../../utils.js';
|
||||
import * as $ from '../../../packages/svelte/src/internal/client/index.js';
|
||||
import { assert, fastest_test } from '../../../utils.js';
|
||||
import * as $ from 'svelte/internal/client';
|
||||
|
||||
function setup() {
|
||||
let head = $.state(0);
|
||||
@ -1,5 +1,5 @@
|
||||
import { assert, fastest_test } from '../../utils.js';
|
||||
import * as $ from '../../../packages/svelte/src/internal/client/index.js';
|
||||
import { assert, fastest_test } from '../../../utils.js';
|
||||
import * as $ from 'svelte/internal/client';
|
||||
|
||||
let len = 50;
|
||||
const iter = 50;
|
||||
@ -1,5 +1,5 @@
|
||||
import { assert, fastest_test } from '../../utils.js';
|
||||
import * as $ from '../../../packages/svelte/src/internal/client/index.js';
|
||||
import { assert, fastest_test } from '../../../utils.js';
|
||||
import * as $ from 'svelte/internal/client';
|
||||
|
||||
let width = 5;
|
||||
|
||||
@ -1,5 +1,5 @@
|
||||
import { assert, fastest_test } from '../../utils.js';
|
||||
import * as $ from '../../../packages/svelte/src/internal/client/index.js';
|
||||
import { assert, fastest_test } from '../../../utils.js';
|
||||
import * as $ from 'svelte/internal/client';
|
||||
|
||||
function setup() {
|
||||
let heads = new Array(100).fill(null).map((_) => $.state(0));
|
||||
@ -1,5 +1,5 @@
|
||||
import { assert, fastest_test } from '../../utils.js';
|
||||
import * as $ from '../../../packages/svelte/src/internal/client/index.js';
|
||||
import { assert, fastest_test } from '../../../utils.js';
|
||||
import * as $ from 'svelte/internal/client';
|
||||
|
||||
let size = 30;
|
||||
|
||||
@ -1,5 +1,5 @@
|
||||
import { assert, fastest_test } from '../../utils.js';
|
||||
import * as $ from '../../../packages/svelte/src/internal/client/index.js';
|
||||
import { assert, fastest_test } from '../../../utils.js';
|
||||
import * as $ from 'svelte/internal/client';
|
||||
|
||||
let width = 10;
|
||||
|
||||
@ -1,5 +1,5 @@
|
||||
import { assert, fastest_test } from '../../utils.js';
|
||||
import * as $ from '../../../packages/svelte/src/internal/client/index.js';
|
||||
import { assert, fastest_test } from '../../../utils.js';
|
||||
import * as $ from 'svelte/internal/client';
|
||||
|
||||
function setup() {
|
||||
let head = $.state(0);
|
||||
@ -1,5 +1,5 @@
|
||||
import { assert, fastest_test } from '../utils.js';
|
||||
import * as $ from '../../packages/svelte/src/internal/client/index.js';
|
||||
import { assert, fastest_test } from '../../utils.js';
|
||||
import * as $ from 'svelte/internal/client';
|
||||
|
||||
/**
|
||||
* @param {number} n
|
||||
@ -1,5 +1,5 @@
|
||||
import { fastest_test } from '../utils.js';
|
||||
import * as $ from '../../packages/svelte/src/internal/client/index.js';
|
||||
import { fastest_test } from '../../utils.js';
|
||||
import * as $ from '../../../packages/svelte/src/internal/client/index.js';
|
||||
|
||||
const COUNT = 1e5;
|
||||
|
||||
@ -0,0 +1,6 @@
|
||||
import { wrapper_bench } from "./wrapper/wrapper_bench.js";
|
||||
|
||||
|
||||
export const ssr_benchmarks = [
|
||||
wrapper_bench
|
||||
]
|
||||
@ -0,0 +1,34 @@
|
||||
<script>
|
||||
const wrapperWidth = 960
|
||||
const wrapperHeight = 720
|
||||
const cellSize = 10
|
||||
const centerX = wrapperWidth / 2
|
||||
const centerY = wrapperHeight / 2
|
||||
|
||||
let angle = 0
|
||||
let radius = 0
|
||||
|
||||
let tiles = []
|
||||
const step = cellSize
|
||||
|
||||
while (radius < Math.min(wrapperWidth, wrapperHeight) / 2) {
|
||||
let x = centerX + Math.cos(angle) * radius
|
||||
let y = centerY + Math.sin(angle) * radius
|
||||
|
||||
if (x >= 0 && x <= wrapperWidth - cellSize && y >= 0 && y <= wrapperHeight - cellSize) {
|
||||
tiles.push({ x, y })
|
||||
}
|
||||
|
||||
angle += 0.2
|
||||
radius += step * 0.015
|
||||
}
|
||||
</script>
|
||||
|
||||
<div id="wrapper">
|
||||
{#each tiles as { x, y }}
|
||||
<div
|
||||
class="tile"
|
||||
style="left: {x.toFixed(2)}px; top: {y.toFixed(2)}px;">
|
||||
</div>
|
||||
{/each}
|
||||
</div>
|
||||
@ -0,0 +1,36 @@
|
||||
import { render } from "svelte/server";
|
||||
import { fastest_test, read_file, write } from "../../../utils.js";
|
||||
import { compile } from "svelte/compiler";
|
||||
|
||||
const dir = `${process.cwd()}/benchmarking/benchmarks/ssr/wrapper`
|
||||
|
||||
async function compile_svelte() {
|
||||
const output = compile(read_file(`${dir}/App.svelte`), {
|
||||
generate: 'server'
|
||||
});
|
||||
write(`${dir}/output/App.js`, output.js.code)
|
||||
|
||||
const module = await import(`${dir}/output/App.js`);
|
||||
|
||||
return module.default;
|
||||
}
|
||||
|
||||
export async function wrapper_bench() {
|
||||
const App = await compile_svelte();
|
||||
// Do 3 loops to warm up JIT
|
||||
for (let i = 0; i < 3; i++) {
|
||||
render(App)
|
||||
}
|
||||
|
||||
const { timing } = await fastest_test(10, () => {
|
||||
for (let i = 0; i < 100; i++) {
|
||||
render(App)
|
||||
}
|
||||
});
|
||||
|
||||
return {
|
||||
benchmark: 'wrapper_bench',
|
||||
time: timing.time.toFixed(2),
|
||||
gc_time: timing.gc_time.toFixed(2)
|
||||
};
|
||||
}
|
||||
Loading…
Reference in new issue