8000 llama-bench : fix -ot with dl backends (#13563) · robbiemu/llama.cpp@6c8b915 · GitHub
[go: up one dir, main page]

Skip to content

Commit 6c8b915

Browse files
authored
llama-bench : fix -ot with dl backends (ggml-org#13563)
1 parent 3cc1f1f commit 6c8b915

File tree

1 file changed

+9
-7
lines changed

1 file changed

+9
-7
lines changed

tools/llama-bench/llama-bench.cpp

Lines changed: 9 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -687,7 +687,7 @@ static cmd_params parse_cmd_params(int argc, char ** argv) {
687687
invalid_param = true;
688688
break;
689689
}
690-
auto value = argv[i];
690+
auto * value = argv[i];
691691
/* static */ std::map<std::string, ggml_backend_buffer_type_t> buft_list;
692692
if (buft_list.empty()) {
693693
// enumerate all the devices and add their buffer types to the list
@@ -719,7 +719,7 @@ static cmd_params parse_cmd_params(int argc, char ** argv) {
719719
// memory leak present in the implementation
720720
// over in arg.cpp. Acceptable because we
721721
// only parse these args once in this program.
722-
auto override_group = value;
722+
auto * override_group = value;
723723
if (value[override_group_span_len] == '\0') {
724724
value = &value[override_group_span_len];
725725
last_group = true;
@@ -730,7 +730,7 @@ static cmd_params parse_cmd_params(int argc, char ** argv) {
730730
std::vector<llama_model_tensor_buft_override> group_tensor_buft_overrides{};
731731
auto override_span_len = std::strcspn(override_group, ";");
732732
while (override_span_len > 0) {
733-
auto override = override_group;
733+
auto * override = override_group;
734734
if (override_group[override_span_len] != '\0') {
735735
override_group[override_span_len] = '\0';
736736
override_group = &override_group[override_span_len + 1];
@@ -743,9 +743,10 @@ static cmd_params parse_cmd_params(int argc, char ** argv) {
743743
break;
744744
}
745745
override[tensor_name_span_len] = '\0';
746-
auto tensor_name = override;
747-
auto buffer_type = &override[tensor_name_span_len + 1];
746+
auto * tensor_name = override;
747+
auto * buffer_type = &override[tensor_name_span_len + 1];
748748
if (buft_list.find(buffer_type) == buft_list.end()) {
749+
printf("error: unrecognized buffer type '%s'\n", buffer_type);
749750
printf("Available buffer types:\n");
750751
for (const auto & it : buft_list) {
751752
printf(" %s\n", ggml_backend_buft_name(it.second));
@@ -1826,10 +1827,11 @@ int main(int argc, char ** argv) {
18261827
fprintf(stderr, "warning: sanitizer enabled, performance may be affected\n");
18271828
#endif
18281829

1829-
cmd_params params = parse_cmd_params(argc, argv);
1830-
18311830
// initialize backends
18321831
ggml_backend_load_all();
1832+
1833+
cmd_params params = parse_cmd_params(argc, argv);
1834+
18331835
auto * cpu_dev = ggml_backend_dev_by_type(GGML_BACKEND_DEVICE_TYPE_CPU);
18341836
if (!cpu_dev) {
18351837
fprintf(stderr, "%s: error: CPU backend is not loaded\n", __func__);

0 commit comments

Comments
 (0)
0