未验证 提交 639e920b 编写于 作者: D Dong Daxiang 提交者: GitHub

Merge pull request #66 from qjing666/bug_fix

Fix bugs in new version
......@@ -22,7 +22,7 @@ elseif (LINUX)
endif()
if (NOT PYTHON_EXECUTABLE)
set(PYTHON_EXECUTABLE python3)
set(PYTHON_EXECUTABLE python)
endif()
find_program(PYTHON ${PYTHON_EXECUTABLE})
......
......@@ -86,9 +86,9 @@ step = 0
for epoch_id in range(epoch_num):
# feed data via loader
for sample in loader():
exe.run(feed=sample)
loss = exe.run(feed=sample, fetch_list=[cost.name])
if step % 50 == 0:
print('Epoch={}, Step={}'.format(epoch_id, step))
print('Epoch={}, Step={}, loss={}'.format(epoch_id, step, loss))
step += 1
end_time = time.time()
......
......@@ -94,6 +94,6 @@ def decrypt_data_to_file(filepath, shape, decrypted_filepath):
for i in p:
f.write(str(i) + '\n')
# generate_encrypted_data()
# generate_encrypted_test_data()
generate_encrypted_data()
generate_encrypted_test_data()
# Copyright (c) 2020 PaddlePaddle Authors. All Rights Reserved.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
#!/bin/bash
#
# A tools to faciliate the parallel running of fluid_encrypted test scrips.
# A test script is EXPECTED to accepted arguments in the following format:
#
# SCRIPT_NAME $ROLE $SERVER $PORT
# ROLE: the role of the running party
# SERVER: the address of the party discovering service
# PORT: the port of the party discovering service
#
# This tool will try to fill the above three argument to the test script,
# so that totally three processes running the script will be started, to
# simulate run of three party in a standalone machine.
#
# Usage of this script:
#
# bash run_standalone.sh TEST_SCRIPT_NAME
#
# modify the following vars according to your environment
PYTHON="python"
REDIS_HOME="path_to_redis_bin"
SERVER="localhost"
PORT=9937
function usage() {
echo 'run_standalone.sh SCRIPT_NAME [ARG...]'
exit 0
}
if [ $# -lt 1 ]; then
usage
fi
SCRIPT=$1
if [ ! -f $SCRIPT ]; then
echo 'Could not find script of '$SCRIPT
exit 1
fi
REDIS_BIN=$REDIS_HOME/redis-cli
if [ ! -f $REDIS_BIN ]; then
echo 'Could not find redis cli in '$REDIS_HOME
exit 1
fi
# clear the redis cache
$REDIS_BIN -h $SERVER -p $PORT flushall
for role in {1..2}; do
$PYTHON $SCRIPT $role $SERVER $PORT 2>&1 >/dev/null &
done
# for party of role 0, run in a foreground mode and show the output
$PYTHON $SCRIPT 0 $SERVER $PORT
......@@ -32,13 +32,10 @@
#
# modify the following vars according to your environment
LD_LIB_PATH="path_to_needed_libs"
PYTHON="python"
REDIS_HOME="path_to_redis_bin"
SERVER="localhost"
PORT=9937
MPC_DATA_UTILS_MODULE_DIRPATH="mpc_data_utils_so_dirpath"
export PYTHONPATH=$MPC_DATA_UTILS_MODULE_DIRPATH:$PYTHONPATH
function usage() {
echo 'run_standalone.sh SCRIPT_NAME [ARG...]'
......@@ -64,8 +61,6 @@ fi
# clear the redis cache
$REDIS_BIN -h $SERVER -p $PORT flushall
# kick off script with roles of 1 and 2, and redirect output to /dev/null
export LD_LIBRARY_PATH=$LD_LIB_PATH:$LD_LIBRARY_PATH
for role in {1..2}; do
$PYTHON $SCRIPT $role $SERVER $PORT 2>&1 >/dev/null &
......
......@@ -60,3 +60,6 @@ def load_decrypt_data(filepath, shape):
for instance in aby3_share_reader():
p = aby3.reconstruct(np.array(instance))
print(p)
generate_encrypted_data()
# Copyright (c) 2020 PaddlePaddle Authors. All Rights Reserved.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
#!/bin/bash
#
# A tools to faciliate the parallel running of fluid_encrypted test scrips.
# A test script is EXPECTED to accepted arguments in the following format:
#
# SCRIPT_NAME $ROLE $SERVER $PORT
# ROLE: the role of the running party
# SERVER: the address of the party discovering service
# PORT: the port of the party discovering service
#
# This tool will try to fill the above three argument to the test script,
# so that totally three processes running the script will be started, to
# simulate run of three party in a standalone machine.
#
# Usage of this script:
#
# bash run_standalone.sh TEST_SCRIPT_NAME
#
# modify the following vars according to your environment
PYTHON="python"
REDIS_HOME="path_to_redis_bin"
SERVER="localhost"
PORT=9937
function usage() {
echo 'run_standalone.sh SCRIPT_NAME [ARG...]'
exit 0
}
if [ $# -lt 1 ]; then
usage
fi
SCRIPT=$1
if [ ! -f $SCRIPT ]; then
echo 'Could not find script of '$SCRIPT
exit 1
fi
REDIS_BIN=$REDIS_HOME/redis-cli
if [ ! -f $REDIS_BIN ]; then
echo 'Could not find redis cli in '$REDIS_HOME
exit 1
fi
# clear the redis cache
$REDIS_BIN -h $SERVER -p $PORT flushall
for role in {1..2}; do
$PYTHON $SCRIPT $role $SERVER $PORT 2>&1 >/dev/null &
done
# for party of role 0, run in a foreground mode and show the output
$PYTHON $SCRIPT 0 $SERVER $PORT
......@@ -14,8 +14,8 @@
import paddle_fl.paddle_fl as fl
import paddle.fluid as fluid
from paddle_fl.core.server.fl_server import FLServer
from paddle_fl.core.master.fl_job import FLRunTimeJob
from paddle_fl.paddle_fl.core.server.fl_server import FLServer
from paddle_fl.paddle_fl.core.master.fl_job import FLRunTimeJob
server = FLServer()
server_id = 0
job_path = "fl_job_config"
......
......@@ -14,7 +14,7 @@
from paddle_fl.paddle_fl.core.trainer.fl_trainer import FLTrainerFactory
from paddle_fl.paddle_fl.core.master.fl_job import FLRunTimeJob
import paddle_fl.paddle_fl.dataset.femnist
import paddle_fl.paddle_fl.dataset.femnist as femnist
import numpy
import sys
import paddle
......@@ -76,7 +76,7 @@ while not trainer.stop():
#train_data,test_data= data_generater(trainer_id,inner_step=trainer._step,batch_size=64,count_by_step=count_by_step)
train_reader = paddle.batch(
paddle.reader.shuffle(
paddle_fl.dataset.femnist.train(
femnist.train(
trainer_id,
inner_step=trainer._step,
batch_size=64,
......@@ -85,7 +85,7 @@ while not trainer.stop():
batch_size=64)
test_reader = paddle.batch(
paddle_fl.dataset.femnist.test(
femnist.test(
trainer_id,
inner_step=trainer._step,
batch_size=64,
......
# Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved.
#
# Licensed under the Apache License, Version 2.0 (the "License"
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
""" PaddleFL version string """
fl_version = "0.2.0"
module_proto_version = "0.2.0"
......@@ -22,7 +22,7 @@ import platform
from setuptools import find_packages
from setuptools import setup
from paddle_fl.version import fl_version
from version import fl_version
def python_version():
"""
......@@ -34,7 +34,7 @@ def python_version():
max_version, mid_version, min_version = python_version()
REQUIRED_PACKAGES = [
'six >= 1.10.0', 'protobuf >= 3.1.0', 'paddlepaddle == 1.6.3'
'six >= 1.10.0', 'protobuf >= 3.1.0', 'paddlepaddle == 1.6.3', 'paddlepaddle-gpu >= 1.8'
]
if max_version < 3:
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册