Skip to content
GitLab
Projects
Groups
Snippets
/
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
Menu
Open sidebar
SWIFT
SWIFTsim
Commits
7736f0f2
Commit
7736f0f2
authored
Apr 04, 2018
by
lhausamm
Committed by
Loic Hausammann
Oct 31, 2018
Browse files
make snapshot available with logger
parent
84ab98ec
Changes
12
Expand all
Hide whitespace changes
Inline
Side-by-side
src/engine.c
View file @
7736f0f2
...
...
@@ -5628,9 +5628,8 @@ void engine_check_for_dumps(struct engine *e) {
engine_print_stats
(
e
);
#ifdef WITH_LOGGER
engine_dump_index
(
e
);
#else
engine_dump_snapshot
(
e
);
#endif
engine_dump_snapshot
(
e
);
}
else
if
(
e
->
ti_next_stats
<
e
->
ti_next_snapshot
)
{
...
...
@@ -5662,9 +5661,8 @@ void engine_check_for_dumps(struct engine *e) {
/* Dump snapshot */
#ifdef WITH_LOGGER
engine_dump_index
(
e
);
#else
engine_dump_snapshot
(
e
);
#endif
engine_dump_snapshot
(
e
);
}
else
if
(
e
->
ti_next_stats
>
e
->
ti_next_snapshot
)
{
...
...
@@ -5684,9 +5682,8 @@ void engine_check_for_dumps(struct engine *e) {
/* Dump snapshot */
#ifdef WITH_LOGGER
engine_dump_index
(
e
);
#else
engine_dump_snapshot
(
e
);
#endif
engine_dump_snapshot
(
e
);
/* Let's fake that we are at the stats dump time */
e
->
ti_current
=
e
->
ti_next_stats
;
...
...
@@ -5723,9 +5720,8 @@ void engine_check_for_dumps(struct engine *e) {
/* Dump... */
#ifdef WITH_LOGGER
engine_dump_index
(
e
);
#else
engine_dump_snapshot
(
e
);
#endif
engine_dump_snapshot
(
e
);
/* ... and find the next output time */
engine_compute_next_snapshot_time
(
e
);
...
...
src/engine.h
View file @
7736f0f2
...
...
@@ -326,7 +326,7 @@ struct engine {
size_t
logger_time_offset
;
/* Size of the dump file */
size_t
logger_size
;
size_t
logger_
buffer_
size
;
#endif
/* Need to dump a snapshot ? */
...
...
src/logger.c
View file @
7736f0f2
...
...
@@ -61,7 +61,7 @@ const unsigned int logger_data_size[logger_data_count] = {
*
* @return updated buff
*/
__attribute__
((
always_inline
))
INLINE
static
char
*
logger_write_chunk_header
(
char
*
buff
,
const
unsigned
int
*
mask
,
const
size_t
*
offset
,
const
size_t
offset_new
)
{
char
*
logger_write_chunk_header
(
char
*
buff
,
const
unsigned
int
*
mask
,
const
size_t
*
offset
,
const
size_t
offset_new
)
{
memcpy
(
buff
,
mask
,
logger_size_mask
);
buff
+=
logger_size_mask
;
...
...
@@ -129,7 +129,7 @@ void logger_write_general_data(struct dump *d, struct logger_const *log, size_t
*
* @return The size of the logger message in bytes.
*/
int
logger_size
(
unsigned
int
mask
)
{
int
logger_
compute_chunk_
size
(
unsigned
int
mask
)
{
/* Start with 8 bytes for the header. */
int
size
=
8
;
...
...
@@ -208,7 +208,7 @@ void logger_log_part(const struct part *p, const unsigned int mask, size_t *offs
error
(
"You should not log particles as timestamps."
);
/* Start by computing the size of the message. */
const
int
size
=
logger_
buffer
_size
(
mask
);
const
int
size
=
logger_
compute_chunk
_size
(
mask
);
/* Allocate a chunk of memory in the dump of the right size. */
size_t
offset_new
;
...
...
@@ -289,7 +289,7 @@ void logger_log_gpart(const struct gpart *p, const unsigned int mask, size_t *of
error
(
"Can't log SPH quantities for gparts."
);
/* Start by computing the size of the message. */
const
int
size
=
logger_
buffer
_size
(
mask
);
const
int
size
=
logger_
compute_chunk
_size
(
mask
);
/* Allocate a chunk of memory in the dump of the right size. */
size_t
offset_new
;
...
...
@@ -338,7 +338,7 @@ void logger_log_gpart(const struct gpart *p, const unsigned int mask, size_t *of
void
logger_log_timestamp
(
integertime_t
timestamp
,
size_t
*
offset
,
struct
dump
*
dump
)
{
/* Start by computing the size of the message. */
const
int
size
=
logger_
buffer
_size
(
logger_mask_timestamp
);
const
int
size
=
logger_
compute_chunk
_size
(
logger_mask_timestamp
);
/* Allocate a chunk of memory in the dump of the right size. */
size_t
offset_new
;
...
...
src/logger.h
View file @
7736f0f2
...
...
@@ -119,7 +119,7 @@ enum logger_datatype {
extern
const
unsigned
int
logger_data_size
[];
/* Function prototypes. */
int
logger_size
(
unsigned
int
mask
);
int
logger_
compute_chunk_
size
(
unsigned
int
mask
);
void
logger_log_all
(
struct
part
*
p
,
const
long
long
Np
,
struct
dump
*
dump
);
void
logger_log_part
(
const
struct
part
*
p
,
const
unsigned
int
mask
,
size_t
*
offset
,
...
...
@@ -135,7 +135,7 @@ int logger_read_timestamp(unsigned long long int *t, size_t *offset,
void
logger_write_file_header
(
struct
dump
*
dump
,
struct
engine
*
e
);
void
logger_const_init
(
struct
logger_const
*
log_const
);
void
logger_const_free
(
struct
logger_const
*
log_const
);
void
logger_ensure_size
(
size_t
total_nr_parts
,
size_t
logger_size
);
void
logger_ensure_size
(
size_t
total_nr_parts
,
size_t
logger_
buffer_
size
);
#endif
/* WITH_LOGGER */
...
...
src/logger_io.c
View file @
7736f0f2
This diff is collapsed.
Click to expand it.
src/logger_io.h
View file @
7736f0f2
...
...
@@ -22,7 +22,7 @@
/* Config parameters. */
#include
"../config.h"
#if
def
ined(HAVE_HDF5) && !defined(WITH_MPI) && defined(
WITH_LOGGER
)
#ifdef
WITH_LOGGER
/* Includes. */
#include
"engine.h"
...
...
src/parallel_io.c
View file @
7736f0f2
...
...
@@ -21,7 +21,7 @@
/* Config parameters. */
#include
"../config.h"
#if defined(HAVE_HDF5) && defined(WITH_MPI) && defined(HAVE_PARALLEL_HDF5)
&& !defined(WITH_LOGGER)
#if defined(HAVE_HDF5) && defined(WITH_MPI) && defined(HAVE_PARALLEL_HDF5)
/* Some standard headers. */
#include
<hdf5.h>
...
...
src/parallel_io.h
View file @
7736f0f2
...
...
@@ -46,6 +46,13 @@ void write_output_parallel(struct engine* e, const char* baseName,
const
struct
unit_system
*
snapshot_units
,
int
mpi_rank
,
int
mpi_size
,
MPI_Comm
comm
,
MPI_Info
info
);
void
writeArray
(
struct
engine
*
e
,
hid_t
grp
,
char
*
fileName
,
FILE
*
xmfFile
,
char
*
partTypeGroupName
,
struct
io_props
props
,
size_t
N
,
long
long
N_total
,
int
mpi_rank
,
long
long
offset
,
const
struct
unit_system
*
internal_units
,
const
struct
unit_system
*
snapshot_units
);
#endif
#endif
/* SWIFT_PARALLEL_IO_H */
src/serial_io.c
View file @
7736f0f2
...
...
@@ -21,7 +21,7 @@
/* Config parameters. */
#include
"../config.h"
#if defined(HAVE_HDF5) && defined(WITH_MPI) && !defined(HAVE_PARALLEL_HDF5)
&& !defined(WITH_LOGGER)
#if defined(HAVE_HDF5) && defined(WITH_MPI) && !defined(HAVE_PARALLEL_HDF5)
/* Some standard headers. */
#include
<hdf5.h>
...
...
src/serial_io.h
View file @
7736f0f2
...
...
@@ -48,6 +48,12 @@ void write_output_serial(struct engine* e, const char* baseName,
const
struct
unit_system
*
snapshot_units
,
int
mpi_rank
,
int
mpi_size
,
MPI_Comm
comm
,
MPI_Info
info
);
void
writeArray
(
const
struct
engine
*
e
,
hid_t
grp
,
char
*
fileName
,
FILE
*
xmfFile
,
char
*
partTypeGroupName
,
const
struct
io_props
props
,
size_t
N
,
long
long
N_total
,
int
mpi_rank
,
long
long
offset
,
const
struct
unit_system
*
internal_units
,
const
struct
unit_system
*
snapshot_units
);
#endif
#endif
/* SWIFT_SERIAL_IO_H */
src/single_io.c
View file @
7736f0f2
...
...
@@ -21,7 +21,7 @@
/* Config parameters. */
#include
"../config.h"
#if defined(HAVE_HDF5) && !defined(WITH_MPI)
&& !defined(WITH_LOGGER)
#if defined(HAVE_HDF5) && !defined(WITH_MPI)
/* Some standard headers. */
#include
<hdf5.h>
...
...
src/single_io.h
View file @
7736f0f2
...
...
@@ -26,6 +26,7 @@
/* Includes. */
#include
"engine.h"
#include
"io_properties.h"
#include
"part.h"
#include
"units.h"
...
...
@@ -46,6 +47,10 @@ void write_index_single(struct engine* e, const char* baseName,
const
struct
unit_system
*
internal_units
,
const
struct
unit_system
*
snapshot_units
);
#endif
/* HAVE_HDF5 && !WITH_MPI */
void
writeArray
(
const
struct
engine
*
e
,
hid_t
grp
,
char
*
fileName
,
FILE
*
xmfFile
,
char
*
partTypeGroupName
,
const
struct
io_props
props
,
size_t
N
,
const
struct
unit_system
*
internal_units
,
const
struct
unit_system
*
snapshot_units
);
#endif
/* SWIFT_SINGLE_IO_H */
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment