move copy constructor for json_data
@mitzimorris ya está trabajando en esto.
Desde el 4/7/2019.
Evaluación
Este issue todavía no se ha evaluado.
Descripción
Summary:
As json_data is being used in CmdStan, it does this:
stan::json::json_data d(stream);
stream.close();
std::shared_ptr<stan::io::var_context> result
= std::make_shared<stan::json::json_data>(d);
return result;
The class json_data is a subclass of var_context. It does not define a copy constructor, so the default copy constructor will be invoked by that call to make_shared (which constructs an object and returns a shared pointer to it that encapsulates the memory management). That means a deep copy of all the data. That means all the data sits in memory twice while this block is executing.
To solve this problem, we need to define move semantics so that the returned object constructed in the shared pointer can steal the data from the local object.
I'm not sure how to test this as we want to make sure we reduce total dynamic memory overhead requirements.
Current Version:
v2.19.1
- Lenguaje dominante
- C++
- Estrellas
- 240
- Forks
- 105
- Métricas de merge de PR
- Sin PR fusionados en 30 d
Preparar el entorno
- Sin Dockerfile ni archivo de Docker Compose
- Tiene una plantilla de pull request
- Leer la guía de contribución
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de stan-dev/cmdstan
-
Release CmdStan 2.40Abierto
Dificultad 4/5 3-5 días Aptitud para principiantes 35/100
-
bug
Dificultad 1/5 Menos de una hora Aptitud para principiantes 55/100
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 45/100
-
code-cleanup
Dificultad 4/5 3-5 días Aptitud para principiantes 35/100
-
diagnose exit codeAbierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 52/100
Todos los issues de stan-dev/cmdstan
Issues similares
-
Upstream changes to reviewAbierto
Dificultad 1/5 Menos de una hora Aptitud para principiantes 72/100
rhalbersma/xstd-ints#395 ·
Los mantenedores suelen responder en 1 día
-
[Bug] Root filesystem scope (/) incorrectly rejects all descendant pathsPosiblemente ocupada @mugenkyou la tomó hoy. Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
neutralinojs/neutralino.js#304 · 1 comentario ·
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
Los mantenedores suelen responder en 1 día
-
FuSa
Dificultad 2/5 1-3 horas Aptitud para principiantes 76/100
tenstorrent/tt-umd#3851 ·
Los mantenedores suelen responder en 3 días
-
zq prints a raw SQL 'no such table: index_default' error when the index has no default indexAbiertobug
Dificultad 2/5 1-3 horas Aptitud para principiantes 73/100
mattgodbolt/zindex#67 ·
Los mantenedores suelen responder en 1 día