|
@@ -6037,12 +6037,12 @@ struct ggml_tensor * ggml_graph_get_tensor(const struct ggml_cgraph * cgraph, co
|
|
|
|
|
|
|
|
struct ggml_tensor * ggml_graph_get_grad(const struct ggml_cgraph * cgraph, const struct ggml_tensor * node) {
|
|
struct ggml_tensor * ggml_graph_get_grad(const struct ggml_cgraph * cgraph, const struct ggml_tensor * node) {
|
|
|
const size_t igrad = ggml_hash_find(&cgraph->visited_hash_set, node);
|
|
const size_t igrad = ggml_hash_find(&cgraph->visited_hash_set, node);
|
|
|
- return igrad != GGML_HASHSET_FULL && ggml_bitset_get(cgraph->visited_hash_set.used, igrad) ? cgraph->grads[igrad] : NULL;
|
|
|
|
|
|
|
+ return igrad != GGML_HASHSET_FULL && ggml_bitset_get(cgraph->visited_hash_set.used, igrad) && cgraph->grads ? cgraph->grads[igrad] : NULL;
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
struct ggml_tensor * ggml_graph_get_grad_acc(const struct ggml_cgraph * cgraph, const struct ggml_tensor * node) {
|
|
struct ggml_tensor * ggml_graph_get_grad_acc(const struct ggml_cgraph * cgraph, const struct ggml_tensor * node) {
|
|
|
const size_t igrad = ggml_hash_find(&cgraph->visited_hash_set, node);
|
|
const size_t igrad = ggml_hash_find(&cgraph->visited_hash_set, node);
|
|
|
- return igrad != GGML_HASHSET_FULL && ggml_bitset_get(cgraph->visited_hash_set.used, igrad) ? cgraph->grad_accs[igrad] : NULL;
|
|
|
|
|
|
|
+ return igrad != GGML_HASHSET_FULL && ggml_bitset_get(cgraph->visited_hash_set.used, igrad) && cgraph->grad_accs ? cgraph->grad_accs[igrad] : NULL;
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
void ggml_graph_print(const struct ggml_cgraph * cgraph) {
|
|
void ggml_graph_print(const struct ggml_cgraph * cgraph) {
|