| File: ShuffleRowsBench.cs | Web Access |
| Project: src\test\Microsoft.ML.PerformanceTests\Microsoft.ML.PerformanceTests.csproj (Microsoft.ML.PerformanceTests) |
// Licensed to the .NET Foundation under one or more agreements. // The .NET Foundation licenses this file to you under the MIT license. // See the LICENSE file in the project root for more information. using BenchmarkDotNet.Attributes; using Microsoft.ML.Data; using Microsoft.ML.PerformanceTests.Harness; namespace Microsoft.ML.PerformanceTests { [CIBenchmark] public class ShuffleRowsBench : BenchmarkBase { private TrainRow[] _rows; private MLContext _context; [GlobalSetup] public void Setup() { _rows = new TrainRow[10_000]; for (var i = 0; i < _rows.Length; i++) { _rows[i] = new TrainRow() { Sample = i.ToString(), Week = i, Label = i / 2 }; } _context = new MLContext(); } [Benchmark] public void ShuffleRows() { IDataView data = _context.Data.LoadFromEnumerable(_rows); IDataView shuffledData = _context.Data.ShuffleRows(data, seed: 0); foreach (string sample in shuffledData.GetColumn<string>("Sample")) { } } private class TrainRow { [ColumnName("Sample")] public string Sample; [ColumnName("Week")] public float Week; [ColumnName("Label")] public float Label; } } }