{"id":20146586,"url":"https://github.com/brosnanyuen/raybnn_dataloader","last_synced_at":"2026-05-07T01:04:24.959Z","repository":{"id":192185761,"uuid":"686469788","full_name":"BrosnanYuen/RayBNN_DataLoader","owner":"BrosnanYuen","description":"Data Loader for RayBNN","archived":false,"fork":false,"pushed_at":"2024-06-18T05:44:03.000Z","size":172,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-07-31T14:35:41.483Z","etag":null,"topics":["arrayfire","cpu","csv","csv-parser","cuda","data-structures","gpu-computing","oneapi","opencl","parallel","parallel-computing","rust"],"latest_commit_sha":null,"homepage":"","language":"Rust","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/BrosnanYuen.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null}},"created_at":"2023-09-02T22:39:00.000Z","updated_at":"2024-06-18T05:44:05.000Z","dependencies_parsed_at":"2023-09-03T07:54:06.896Z","dependency_job_id":"c0df7fc5-7325-462c-acaf-cc87aaf4ed0e","html_url":"https://github.com/BrosnanYuen/RayBNN_DataLoader","commit_stats":{"total_commits":104,"total_committers":2,"mean_commits":52.0,"dds":0.009615384615384581,"last_synced_commit":"7806343f833143b17452209f764a3248f69dd387"},"previous_names":["brosnanyuen/raybnn_dataloader"],"tags_count":4,"template":false,"template_full_name":null,"purl":"pkg:github/BrosnanYuen/RayBNN_DataLoader","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/BrosnanYuen%2FRayBNN_DataLoader","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/BrosnanYuen%2FRayBNN_DataLoader/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/BrosnanYuen%2FRayBNN_DataLoader/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/BrosnanYuen%2FRayBNN_DataLoader/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/BrosnanYuen","download_url":"https://codeload.github.com/BrosnanYuen/RayBNN_DataLoader/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/BrosnanYuen%2FRayBNN_DataLoader/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":270913657,"owners_count":24666996,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-08-17T02:00:09.016Z","response_time":129,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["arrayfire","cpu","csv","csv-parser","cuda","data-structures","gpu-computing","oneapi","opencl","parallel","parallel-computing","rust"],"created_at":"2024-11-13T22:24:23.627Z","updated_at":"2026-05-07T01:04:24.919Z","avatar_url":"https://github.com/BrosnanYuen.png","language":"Rust","funding_links":[],"categories":[],"sub_categories":[],"readme":"# RayBNN_DataLoader\nData Loader for RayBNN\n\nRead CSV, numpy, and binary files to Rust vectors of f16, f32, f64, u8, u16, u32, u64, i8, i16, i32, i64\n\nRead CSV, numpy, and binary files to Arrayfire GPU arrays of f16, f32, f64, u8, u16, u32, u64, i8, i16, i32, i64\n\n\n# Install Arrayfire\n\nInstall the Arrayfire 3.9.0 binaries at [https://arrayfire.com/binaries/](https://arrayfire.com/binaries/)\n\nor build from source\n[https://github.com/arrayfire/arrayfire/wiki/Getting-ArrayFire](https://github.com/arrayfire/arrayfire/wiki/Getting-ArrayFire)\n\n\n\n\n# Add to Cargo.toml\n```\narrayfire = { version = \"3.8.1\", package = \"arrayfire_fork\" }\nrayon = \"1.10.0\"\nnum = \"0.4.3\"\nnum-traits = \"0.2.19\"\nhalf = { version = \"2.4.1\" , features = [\"num-traits\"] }\nnpyz = \"0.8.3\"\nRayBNN_DataLoader = \"2.0.3\"\n```\n\n# List of Examples\n\n\n\n# Read a CSV file to a floating point 64 bit CPU Vector\nThe vector is completely flat\n```\nlet (mut cpu_vector,metadata) = RayBNN_DataLoader::Dataset::CSV::file_to_vec_cpu::\u003cf64\u003e(\n    \"./test_data/read_test.dat\"\n);\n```\n\n# Read a CSV file to a integer 64 bit CPU Vector\nThe vector is completely flat\n```\nlet (mut cpu_vector,metadata) = RayBNN_DataLoader::Dataset::CSV::file_to_vec_cpu::\u003ci64\u003e(\n    \"./test_data/read_test2.dat\"\n);\n```\n\n# Read a CSV file to a floating point 64 bit arrayfire\nThe array is 2D existing in GPU or OpenCL\n```\nlet read_test = RayBNN_DataLoader::Dataset::CSV::file_to_arrayfire::\u003cf64\u003e(\n    \"./test_data/read_test.dat\"\n);\n```\n\n\n# Read a CSV file to a floating point 64 bit HashMap\n```\nlet hashdata = RayBNN_DataLoader::Dataset::CSV::file_to_hash_cpu::\u003cf64\u003e(\n    \"./test_data/dataloader.csv\",\n    7,\n    5\n);\n```\n\n# Read a CSV file to a floating point 64 bit HashMap with Arrayfire\n```\nlet arr_dims = arrayfire::Dim4::new(\u0026[5, 7, 1, 1]);\nlet (hashdata,metadata) = RayBNN_DataLoader::Dataset::CSV::file_to_hash_arrayfire::\u003cf64\u003e(\n    \"./test_data/dataloader.csv\",\n    arr_dims,\n);\n```\n\n# Write a float 32 bit CPU vector to CSV file\n```\nlet mut metadata: HashMap\u003cString,u64\u003e = HashMap::new();\n\nmetadata.insert(\"dim0\", 11);\nmetadata.insert(\"dim1\", 3);\n\nRayBNN_DataLoader::Dataset::CSV::write_vec_cpu_to_csv::\u003cf32\u003e(\n    \"./randvec2.csv\",\n    \u0026randvec,\n    \u0026metadata\n);\n```\n\n\n\n# Write a float 64 bit arrayfire to CSV file\n```\nRayBNN_DataLoader::Dataset::CSV::write_arrayfire_to_csv::\u003cf64\u003e(\n    \"./randvec.csv\",\n    \u0026arr\n);\n```\n\n\n\n# Read YAML Model Information\n```\nlet mut modeldata_string:  HashMap\u003cString, String\u003e = HashMap::new();\nlet mut modeldata_float:  HashMap\u003cString, f64\u003e = HashMap::new();\nlet mut modeldata_int:  HashMap\u003cString, u64\u003e = HashMap::new();\n\nRayBNN_DataLoader::Model::YAML::read(\n    \"./test_data/test.yaml\",\n\n    \u0026mut modeldata_string,\n    \u0026mut modeldata_float,\n    \u0026mut modeldata_int,\n);\n```\n\n\n\n# Write YAML Model Information\n```\nRayBNN_DataLoader::Model::YAML::write(\n    \"./sample.yaml\",\n\n    \u0026modeldata_string,\n    \u0026modeldata_float,\n    \u0026modeldata_int,\n);\n```","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbrosnanyuen%2Fraybnn_dataloader","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fbrosnanyuen%2Fraybnn_dataloader","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbrosnanyuen%2Fraybnn_dataloader/lists"}