MCPcopy Create free account
hub / github.com/Tiiny-AI/PowerInfer / main

Function main

smallthinker/tests/test-backend-ops.cpp:4687–4793  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

4685}
4686
4687int main(int argc, char ** argv) {
4688 test_mode mode = MODE_TEST;
4689 const char * op_name_filter = nullptr;
4690 const char * backend_filter = nullptr;
4691 const char * params_filter = nullptr;
4692
4693 for (int i = 1; i < argc; i++) {
4694 if (strcmp(argv[i], "test") == 0) {
4695 mode = MODE_TEST;
4696 } else if (strcmp(argv[i], "perf") == 0) {
4697 mode = MODE_PERF;
4698 } else if (strcmp(argv[i], "grad") == 0) {
4699 mode = MODE_GRAD;
4700 } else if (strcmp(argv[i], "-o") == 0) {
4701 if (i + 1 < argc) {
4702 op_name_filter = argv[++i];
4703 } else {
4704 usage(argv);
4705 return 1;
4706 }
4707 } else if (strcmp(argv[i], "-b") == 0) {
4708 if (i + 1 < argc) {
4709 backend_filter = argv[++i];
4710 } else {
4711 usage(argv);
4712 return 1;
4713 }
4714 } else if (strcmp(argv[i], "-p") == 0) {
4715 if (i + 1 < argc) {
4716 params_filter = argv[++i];
4717 } else {
4718 usage(argv);
4719 return 1;
4720 }
4721 } else {
4722 usage(argv);
4723 return 1;
4724 }
4725 }
4726
4727 // load and enumerate backends
4728 ggml_backend_load_all();
4729
4730 printf("Testing %zu devices\n\n", ggml_backend_dev_count());
4731
4732 size_t n_ok = 0;
4733
4734 for (size_t i = 0; i < ggml_backend_dev_count(); i++) {
4735 ggml_backend_dev_t dev = ggml_backend_dev_get(i);
4736
4737 printf("Backend %zu/%zu: %s\n", i + 1, ggml_backend_dev_count(), ggml_backend_dev_name(dev));
4738
4739 if (backend_filter != NULL && strcmp(backend_filter, ggml_backend_dev_name(dev)) != 0) {
4740 printf(" Skipping\n");
4741 n_ok++;
4742 continue;
4743 }
4744

Callers

nothing calls this directly

Calls 15

ggml_backend_load_allFunction · 0.85
printfFunction · 0.85
ggml_backend_dev_countFunction · 0.85
ggml_backend_dev_getFunction · 0.85
ggml_backend_dev_nameFunction · 0.85
ggml_backend_dev_initFunction · 0.85
ggml_backend_dev_memoryFunction · 0.85
ggml_quantize_freeFunction · 0.85
usageFunction · 0.70

Tested by

no test coverage detected