Skip to content
GitLab
Menu
Projects
Groups
Snippets
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
Menu
Open sidebar
tianlh
LightGBM-DCU
Commits
4e402370
Commit
4e402370
authored
Dec 15, 2016
by
Guolin Ke
Browse files
fix bug in save binary
parent
54963bb7
Changes
3
Show whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
11 additions
and
7 deletions
+11
-7
include/LightGBM/dataset_loader.h
include/LightGBM/dataset_loader.h
+1
-1
src/io/dataset.cpp
src/io/dataset.cpp
+6
-2
src/io/dataset_loader.cpp
src/io/dataset_loader.cpp
+4
-4
No files found.
include/LightGBM/dataset_loader.h
View file @
4e402370
...
...
@@ -20,7 +20,7 @@ public:
Dataset
*
LoadFromFileAlignWithOtherDataset
(
const
char
*
filename
,
const
Dataset
*
train_data
);
Dataset
*
LoadFromBinFile
(
const
char
*
bin_filename
,
int
rank
,
int
num_machines
);
Dataset
*
LoadFromBinFile
(
const
char
*
data_filename
,
const
char
*
bin_filename
,
int
rank
,
int
num_machines
);
Dataset
*
CostructFromSampleData
(
std
::
vector
<
std
::
vector
<
double
>>&
sample_values
,
size_t
total_sample_size
,
data_size_t
num_data
);
...
...
src/io/dataset.cpp
View file @
4e402370
...
...
@@ -131,13 +131,17 @@ bool Dataset::GetIntField(const char* field_name, int64_t* out_len, const int**
}
void
Dataset
::
SaveBinaryFile
(
const
char
*
bin_filename
)
{
if
(
bin_filename
!=
nullptr
&&
std
::
string
(
bin_filename
)
==
std
::
string
(
data_filename_
))
{
Log
::
Warning
(
"Bianry file %s already existed"
,
bin_filename
);
return
;
}
// if not pass a filename, just append ".bin" of original file
if
(
bin_filename
==
nullptr
||
bin_filename
[
0
]
==
'\0'
)
{
std
::
string
bin_filename_str
(
data_filename_
);
if
(
bin_filename
==
nullptr
||
bin_filename
[
0
]
==
'\0'
)
{
bin_filename_str
.
append
(
".bin"
);
bin_filename
=
bin_filename_str
.
c_str
();
}
bool
is_file_existed
=
false
;
FILE
*
file
;
#ifdef _MSC_VER
...
...
src/io/dataset_loader.cpp
View file @
4e402370
...
...
@@ -210,7 +210,7 @@ Dataset* DatasetLoader::LoadFromFile(const char* filename, int rank, int num_mac
}
}
else
{
// load data from binary file
dataset
.
reset
(
LoadFromBinFile
(
bin_filename
.
c_str
(),
rank
,
num_machines
));
dataset
.
reset
(
LoadFromBinFile
(
filename
,
bin_filename
.
c_str
(),
rank
,
num_machines
));
}
// check meta data
dataset
->
metadata_
.
CheckOrPartition
(
num_global_data
,
used_data_indices
);
...
...
@@ -257,7 +257,7 @@ Dataset* DatasetLoader::LoadFromFileAlignWithOtherDataset(const char* filename,
}
}
else
{
// load data from binary file
dataset
.
reset
(
LoadFromBinFile
(
bin_filename
.
c_str
(),
0
,
1
));
dataset
.
reset
(
LoadFromBinFile
(
filename
,
bin_filename
.
c_str
(),
0
,
1
));
}
// not need to check validation data
// check meta data
...
...
@@ -265,7 +265,7 @@ Dataset* DatasetLoader::LoadFromFileAlignWithOtherDataset(const char* filename,
return
dataset
.
release
();
}
Dataset
*
DatasetLoader
::
LoadFromBinFile
(
const
char
*
bin_filename
,
int
rank
,
int
num_machines
)
{
Dataset
*
DatasetLoader
::
LoadFromBinFile
(
const
char
*
data_filename
,
const
char
*
bin_filename
,
int
rank
,
int
num_machines
)
{
auto
dataset
=
std
::
unique_ptr
<
Dataset
>
(
new
Dataset
());
FILE
*
file
;
#ifdef _MSC_VER
...
...
@@ -273,7 +273,7 @@ Dataset* DatasetLoader::LoadFromBinFile(const char* bin_filename, int rank, int
#else
file
=
fopen
(
bin_filename
,
"rb"
);
#endif
dataset
->
data_filename_
=
data_filename
;
if
(
file
==
NULL
)
{
Log
::
Fatal
(
"Could not read binary data from %s"
,
bin_filename
);
}
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a 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