Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
109 commits
Select commit Hold shift + click to select a range
f1c2854
run-persistent
hugolatendresse Nov 29, 2024
e9a278d
permission
Nov 29, 2024
bd89698
docker_command
hugolatendresse Nov 29, 2024
c6fd2a8
Merge branch 'dev_mixtral' of github.com:hugolatendresse/FlexFlow int…
hugolatendresse Nov 29, 2024
16fcc3d
spacing
hugolatendresse Nov 29, 2024
0357628
include ff
hugolatendresse Nov 29, 2024
58de633
persist all
hugolatendresse Nov 29, 2024
682bd5c
home
hugolatendresse Nov 29, 2024
41f781a
detailed try..catch
hugolatendresse Nov 30, 2024
feb859c
try to revert but errors
hugolatendresse Nov 30, 2024
e09ec2e
add back else
hugolatendresse Nov 30, 2024
bdcfc94
echo docker command
hugolatendresse Nov 30, 2024
1c88058
no sliding window
hugolatendresse Nov 30, 2024
14f5820
read max_position_embeddings
hugolatendresse Nov 30, 2024
670b8cb
run-persistent
hugolatendresse Nov 30, 2024
812deb0
home once only
hugolatendresse Nov 30, 2024
318d052
config
hugolatendresse Dec 2, 2024
17f162f
with .
hugolatendresse Dec 2, 2024
f5c3f7f
all _ instead of .
hugolatendresse Dec 3, 2024
22e2a58
_block
hugolatendresse Dec 3, 2024
1cd424a
try nullptr
hugolatendresse Dec 3, 2024
df0c59b
no comma
hugolatendresse Dec 3, 2024
3598ee9
debug
hugolatendresse Dec 3, 2024
06259f7
debug
hugolatendresse Dec 3, 2024
c89a327
revert aggregate
hugolatendresse Dec 6, 2024
71c5d69
one expert
hugolatendresse Dec 7, 2024
cb1eaa8
sync
hugolatendresse Dec 7, 2024
286a1fe
dont redefien mlpout
hugolatendresse Dec 7, 2024
8709035
sync
hugolatendresse Dec 7, 2024
51f9701
sync
hugolatendresse Dec 7, 2024
a65e733
register tokenizer for mixtral
hugolatendresse Dec 7, 2024
62bf012
sync
hugolatendresse Dec 7, 2024
61adc0f
rename weights
hugolatendresse Dec 7, 2024
8c69b8b
sync
hugolatendresse Dec 7, 2024
0b89169
sync
hugolatendresse Dec 7, 2024
76cac36
permission
Dec 7, 2024
baa30a8
Merge branch 'nomlp2' of https://github.com/hugolatendresse/FlexFlow …
Dec 7, 2024
53a4cc4
sync
hugolatendresse Dec 7, 2024
bd1ffa0
Merge branch 'nomlp2' of github.com:hugolatendresse/FlexFlow into nomlp2
hugolatendresse Dec 7, 2024
aeb29e9
sync
hugolatendresse Dec 7, 2024
d27804f
sync
hugolatendresse Dec 7, 2024
ecb9675
sync
hugolatendresse Dec 7, 2024
af665bd
which loading
hugolatendresse Dec 7, 2024
16ab912
sync
hugolatendresse Dec 7, 2024
c3945e3
sync
hugolatendresse Dec 7, 2024
9385e82
.o
hugolatendresse Dec 7, 2024
ce91966
sync
hugolatendresse Dec 7, 2024
7e558bc
able to output with mixtral (!!!) but it's all etc etc etc
hugolatendresse Dec 7, 2024
c8007fd
try expert 1
hugolatendresse Dec 7, 2024
aa01156
revert experts
hugolatendresse Dec 7, 2024
539b491
tmp fix
hugolatendresse Dec 7, 2024
28b2df0
dummy gate
hugolatendresse Dec 7, 2024
8ad9478
bad softmax fix
hugolatendresse Dec 7, 2024
9dcb5c2
printf
hugolatendresse Dec 8, 2024
7ed7d65
dims
hugolatendresse Dec 8, 2024
a906c6a
sync
hugolatendresse Dec 8, 2024
0af8064
sync
hugolatendresse Dec 8, 2024
4d26fb5
comments on dims
hugolatendresse Dec 8, 2024
c0e4524
sync
hugolatendresse Dec 8, 2024
7462fb4
sync
hugolatendresse Dec 8, 2024
21ecf77
sync
hugolatendresse Dec 8, 2024
742ec59
sync
hugolatendresse Dec 8, 2024
b04af7a
sync
hugolatendresse Dec 8, 2024
99954e5
sync
hugolatendresse Dec 8, 2024
511fc25
sync
hugolatendresse Dec 8, 2024
e590ce5
sync
hugolatendresse Dec 8, 2024
1ed4bff
sync
hugolatendresse Dec 8, 2024
5700378
CHECKPOINT
hugolatendresse Dec 8, 2024
381d3cd
2222:22 port
hugolatendresse Dec 8, 2024
6309e70
tmp_volume
hugolatendresse Dec 8, 2024
11a78f2
revert changes
hugolatendresse Dec 8, 2024
7069082
printf dims
hugolatendresse Dec 8, 2024
4efc9eb
sync
hugolatendresse Dec 8, 2024
fe1f6f2
sync
hugolatendresse Dec 8, 2024
d71e674
sync
hugolatendresse Dec 8, 2024
3ae5a85
sync
hugolatendresse Dec 8, 2024
bf65efe
sync
hugolatendresse Dec 8, 2024
c989f57
sync
hugolatendresse Dec 8, 2024
f4c7d3a
sync
hugolatendresse Dec 8, 2024
41cf635
sync
hugolatendresse Dec 8, 2024
4121340
sync
hugolatendresse Dec 8, 2024
7f6a18b
sync
hugolatendresse Dec 8, 2024
3498538
I'm able to output with only one expert by commenting out groupby and…
hugolatendresse Dec 8, 2024
344fe09
sync
hugolatendresse Dec 9, 2024
b9883c1
sync
hugolatendresse Dec 9, 2024
65afc21
works without topk!
hugolatendresse Dec 9, 2024
4d6886c
outputs tokens with softmax assertion not commented out
hugolatendresse Dec 9, 2024
e757567
sync
hugolatendresse Dec 9, 2024
d45edbc
sync
hugolatendresse Dec 9, 2024
8c422aa
use full precisoin
hugolatendresse Dec 9, 2024
c0e4824
sync
hugolatendresse Dec 9, 2024
1c13c1e
sync
hugolatendresse Dec 9, 2024
d31cbea
sync
hugolatendresse Dec 9, 2024
8c525c4
sync
hugolatendresse Dec 9, 2024
8b10df9
sync
hugolatendresse Dec 9, 2024
f8ea430
sync
hugolatendresse Dec 9, 2024
54e6adc
sync
hugolatendresse Dec 9, 2024
e5075fa
sync
hugolatendresse Dec 9, 2024
fe8e7fd
sync
hugolatendresse Dec 9, 2024
dbe3be6
sync
hugolatendresse Dec 9, 2024
0d2fa44
sync
hugolatendresse Dec 9, 2024
a0ad4c0
sync
hugolatendresse Dec 9, 2024
5473f2c
sync
hugolatendresse Dec 9, 2024
927356d
sync
hugolatendresse Dec 9, 2024
f7c6360
sync
hugolatendresse Dec 9, 2024
88a7163
just run groupby
hugolatendresse Dec 9, 2024
89f5a85
sync
hugolatendresse Dec 9, 2024
0eeaab4
outputs tokens
hugolatendresse Dec 9, 2024
17174d2
comments
hugolatendresse Dec 9, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 5 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -196,3 +196,8 @@ tests/inference/python_test_configs/*.json

core.*
fine_grained_alignment_config.json

# CLion
.idea/
cmake-build-debug
cmake-build-debug-remote-host
2 changes: 1 addition & 1 deletion config/config.linux
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@
INSTALL_DIR=${INSTALL_DIR:-}

# set build type
BUILD_TYPE=${BUILD_TYPE:-Release}
BUILD_TYPE=${BUILD_TYPE:-Debug}

INFERENCE_TESTS=${INFERENCE_TESTS:-OFF}
LIBTORCH_PATH=${LIBTORCH_PATH:-"$(realpath ../..)/libtorch"}
Expand Down
134 changes: 134 additions & 0 deletions docker/run-persistent.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,134 @@
#! /usr/bin/env bash
set -euo pipefail

# Usage: ./run.sh <docker_image_name>
# Optional environment variables: FF_GPU_BACKEND, cuda_version, hip_version, ATTACH_GPUS, SHM_SIZE

# Cd into directory holding this script
cd "${BASH_SOURCE[0]%/*}"

# Parse input params
image=${1:-flexflow}
FF_GPU_BACKEND=${FF_GPU_BACKEND:-cuda}
cuda_version=${cuda_version:-"empty"}
hip_version=${hip_version:-"empty"}

# Parameter controlling whether to attach GPUs to the Docker container
ATTACH_GPUS=${ATTACH_GPUS:-true}
gpu_arg=""
if $ATTACH_GPUS ; then gpu_arg="--gpus all" ; fi
FORWARD_STREAMLIT_PORT=${FORWARD_STREAMLIT_PORT:-true}
port_forward_arg=""
if $FORWARD_STREAMLIT_PORT ; then
port_forward_arg+="-p 8501:8501"
fi


# Amount of shared memory to give the Docker container access to
# If you get a Bus Error, increase this value. If you don't have enough memory
# on your machine, decrease this value.
SHM_SIZE=${SHM_SIZE:-8192m}

# Check docker image name
if [[ "$image" != @(flexflow-environment|flexflow) ]]; then
echo "Error, image name ${image} is invalid. Choose between 'flexflow-environment', 'flexflow'."
exit 1
fi

# Check GPU backend
if [[ "${FF_GPU_BACKEND}" != @(cuda|hip_cuda|hip_rocm|intel) ]]; then
echo "Error, value of FF_GPU_BACKEND (${FF_GPU_BACKEND}) is invalid. Pick between 'cuda', 'hip_cuda', 'hip_rocm' or 'intel'."
exit 1
elif [[ "${FF_GPU_BACKEND}" != "cuda" ]]; then
echo "Running $image docker image with gpu backend: ${FF_GPU_BACKEND}"
else
echo "Running $image docker image with default GPU backend: cuda"
fi

# gpu backend version suffix for the docker image.
gpu_backend_version=""

if [[ "${FF_GPU_BACKEND}" == "cuda" || "${FF_GPU_BACKEND}" == "hip_cuda" ]]; then
# Autodetect cuda version if not specified
if [[ $cuda_version == "empty" ]]; then
# shellcheck disable=SC2015
cuda_version=$(command -v nvcc >/dev/null 2>&1 && nvcc --version | grep "release" | awk '{print $NF}' || true)
# Change cuda_version eg. V11.7.99 to 11.7
cuda_version=${cuda_version:1:4}
if [[ -z "$cuda_version" ]]; then
echo "Could not detect CUDA version. Please specify one manually by setting the 'cuda_version' env."
exit 1
fi
fi
# Check that CUDA version is supported
if [[ "$cuda_version" != @(11.1|11.2|11.3|11.4|11.5|11.6|11.7|11.8|12.0|12.1|12.2|12.3|12.4|12.5|12.6|12.7|12.8|12.9) ]]; then
echo "cuda_version is not supported, please choose among {11.1|11.2|11.3|11.4|11.5|11.6|11.7|11.8|12.0|12.1|12.2}"
exit 1
fi
# Use CUDA 12.2 for all versions greater or equal to 12.2 for now
if [[ "$cuda_version" == @(12.3|12.4|12.5|12.6|12.7|12.8|12.9) ]]; then
cuda_version=12.2
fi
# Set cuda version suffix to docker image name
echo "Running $image docker image with CUDA $cuda_version"
gpu_backend_version="-${cuda_version}"
fi

if [[ "${FF_GPU_BACKEND}" == "hip_rocm" || "${FF_GPU_BACKEND}" == "hip_cuda" ]]; then
# Autodetect HIP version if not specified
if [[ $hip_version == "empty" ]]; then
# shellcheck disable=SC2015
hip_version=$(command -v hipcc >/dev/null 2>&1 && hipcc --version | grep "HIP version:" | awk '{print $NF}' || true)
# Change hip_version eg. 5.6.31061-8c743ae5d to 5.6
hip_version=${hip_version:0:3}
if [[ -z "$hip_version" ]]; then
echo "Could not detect HIP version. Please specify one manually by setting the 'hip_version' env."
exit 1
fi
fi
# Check that HIP version is supported
if [[ "$hip_version" != @(5.3|5.4|5.5|5.6) ]]; then
echo "hip_version is not supported, please choose among {5.3, 5.4, 5.5, 5.6}"
exit 1
fi
echo "Running $image docker image with HIP $hip_version"
if [[ "${FF_GPU_BACKEND}" == "hip_rocm" ]]; then
gpu_backend_version="-${hip_version}"
fi
fi

# Check that image exists, if fails, print the default error message.
if [[ "$(docker images -q "${image}-${FF_GPU_BACKEND}${gpu_backend_version}":latest 2> /dev/null)" == "" ]]; then
echo "Error, ${image}-${FF_GPU_BACKEND}${gpu_backend_version}:latest does not exist!"
if [[ "${FF_GPU_BACKEND}" == "cuda" ]]; then
echo ""
echo "To download the docker image, run:"
echo " FF_GPU_BACKEND=${FF_GPU_BACKEND} cuda_version=${cuda_version} $(pwd)/pull.sh $image"
echo "To build the docker image from source, run:"
echo " FF_GPU_BACKEND=${FF_GPU_BACKEND} cuda_version=${cuda_version} $(pwd)/build.sh $image"
echo ""
elif [[ "${FF_GPU_BACKEND}" == "hip_rocm" ]]; then
echo ""
echo "To download the docker image, run:"
echo " FF_GPU_BACKEND=${FF_GPU_BACKEND} hip_version=${hip_version} $(pwd)/pull.sh $image"
echo "To build the docker image from source, run:"
echo " FF_GPU_BACKEND=${FF_GPU_BACKEND} hip_version=${hip_version} $(pwd)/build.sh $image"
echo ""
fi
exit 1
fi

cache_volume="-v cache_volume:/root/.cache"
home_volume="-v home_volume:/home"
tmp_volume="-v tmp_volume:/tmp"


ssh_key_volume=""
ssh_key_path="$HOME/.ssh/id_rsa"
if [ -f "$ssh_key_path" ] && [ -f "$ssh_key_path.pub" ]; then
ssh_key_volume="-v $ssh_key_path:/root/.ssh/id_rsa -v $ssh_key_path.pub:/root/.ssh/id_rsa.pub"
fi

docker_command="docker run -it -p 2222:22 $gpu_arg --shm-size=${SHM_SIZE} --cap-add=SYS_PTRACE ${ssh_key_volume} ${cache_volume} ${home_volume} ${tmp_volume} ${port_forward_arg} ${image}-${FF_GPU_BACKEND}${gpu_backend_version}:latest"
echo "$docker_command"
eval "$docker_command"
5 changes: 4 additions & 1 deletion docker/run.sh
Original file line number Diff line number Diff line change
Expand Up @@ -130,4 +130,7 @@ ssh_key_path="$HOME/.ssh/id_rsa"
if [ -f "$ssh_key_path" ] && [ -f "$ssh_key_path.pub" ]; then
ssh_key_volume="-v $ssh_key_path:/root/.ssh/id_rsa -v $ssh_key_path.pub:/root/.ssh/id_rsa.pub"
fi
eval docker run -it "$gpu_arg" "--shm-size=${SHM_SIZE}" "--cap-add=SYS_PTRACE" "${ssh_key_volume}" "${hf_token_volume}" "${port_forward_arg}" "${image}-${FF_GPU_BACKEND}${gpu_backend_version}:latest"

docker_command="docker run -it $gpu_arg --shm-size=${SHM_SIZE} --cap-add=SYS_PTRACE ${ssh_key_volume} ${hf_token_volume} ${port_forward_arg} ${image}-${FF_GPU_BACKEND}${gpu_backend_version}:latest"
echo "$docker_command"
eval "$docker_command"
2 changes: 1 addition & 1 deletion inference/incr_decoding/incr_decoding.cc
Original file line number Diff line number Diff line change
Expand Up @@ -102,7 +102,7 @@ void parse_input_args(char **argv,
max_tokens_per_batch = std::stoi(argv[++i]);
continue;
}
if (!strcmp(argv[i], "--max-sequence-length")) {
if (!strcmp(argv[i], "--max-sequence-length")) { // total including prompt
max_sequence_length = std::stoi(argv[++i]);
continue;
}
Expand Down
Loading