Skip to content
GitLab
Explore
Sign in
Primary navigation
Search or go to…
Project
maestro-core
Manage
Activity
Members
Labels
Plan
Issues
Issue boards
Milestones
Code
Merge requests
Repository
Branches
Commits
Tags
Repository graph
Compare revisions
Snippets
Build
Pipelines
Jobs
Pipeline schedules
Artifacts
Deploy
Releases
Container registry
Model registry
Analyze
Contributor analytics
Model experiments
Help
Help
Support
GitLab documentation
Compare GitLab plans
GitLab community forum
Contribute to GitLab
Provide feedback
Keyboard shortcuts
?
Snippets
Groups
Projects
Show more breadcrumbs
maestro
maestro-core
Commits
e8a96cc3
Commit
e8a96cc3
authored
Aug 23, 2022
by
Ali Omar Abdelazim Mohammed
Committed by
Ali Mohammed
Aug 24, 2022
Browse files
Options
Downloads
Patches
Plain Diff
adjust address for dist_cdo and fragmentation
parent
5b02a4e2
Branches
Branches containing commit
Tags
Tags containing commit
No related merge requests found
Changes
1
Show whitespace changes
Inline
Side-by-side
Showing
1 changed file
transport/rdma.c
+8
-8
8 additions, 8 deletions
transport/rdma.c
with
8 additions
and
8 deletions
transport/rdma.c
+
8
−
8
View file @
e8a96cc3
...
@@ -395,7 +395,7 @@ mstro_transport_rdma__read(const struct mstro_pm_app_registry_entry *app_entry,
...
@@ -395,7 +395,7 @@ mstro_transport_rdma__read(const struct mstro_pm_app_registry_entry *app_entry,
mstro_cdo
cdo_dst
,
mstro_cdo
cdo_dst
,
void
*
mr_desc
,
void
*
mr_desc
,
uint64_t
mr_addr
,
uint64_t
mr_key
,
uint64_t
mr_addr
,
uint64_t
mr_key
,
size_t
offset
,
size_t
len
,
size_t
offset
,
size_t
len
,
size_t
dst_offset
,
struct
mstro_transport_rdma_cb_args
*
closure
)
struct
mstro_transport_rdma_cb_args
*
closure
)
{
{
mstro_status
status
;
mstro_status
status
;
...
@@ -432,7 +432,7 @@ mstro_transport_rdma__read(const struct mstro_pm_app_registry_entry *app_entry,
...
@@ -432,7 +432,7 @@ mstro_transport_rdma__read(const struct mstro_pm_app_registry_entry *app_entry,
size_t
num_retries
=
NUM_READ_RETRIES
;
size_t
num_retries
=
NUM_READ_RETRIES
;
RETRY_RDMA_TRANSPORT_READ:
;
RETRY_RDMA_TRANSPORT_READ:
;
int
ret
=
fi_read
(
app_entry
->
ep
->
ep
,
int
ret
=
fi_read
(
app_entry
->
ep
->
ep
,
(
uint8_t
*
)
cdo_dst
->
raw_ptr
+
offset
,
len
,
(
uint8_t
*
)
cdo_dst
->
raw_ptr
+
offset
+
dst_offset
,
len
,
mr_desc
,
mr_desc
,
app_entry
->
addr
,
mr_addr
+
offset
,
mr_key
,
ctx
);
app_entry
->
addr
,
mr_addr
+
offset
,
mr_key
,
ctx
);
if
(
ret
==-
FI_EAGAIN
)
{
if
(
ret
==-
FI_EAGAIN
)
{
...
@@ -521,7 +521,7 @@ mstro_transport_rdma_dst_execute(mstro_cdo cdo_dst, Mstro__Pool__TransferTicket*
...
@@ -521,7 +521,7 @@ mstro_transport_rdma_dst_execute(mstro_cdo cdo_dst, Mstro__Pool__TransferTicket*
}
}
uint64_t
requested_key
=
app_entry
->
ep
->
fi
->
domain_attr
->
mr_mode
&
FI_MR_PROV_KEY
?
0
:
mstro_memory_new_key
();
uint64_t
requested_key
=
app_entry
->
ep
->
fi
->
domain_attr
->
mr_mode
&
FI_MR_PROV_KEY
?
0
:
mstro_memory_new_key
();
int
err
=
fi_mr_reg
(
app_entry
->
ep
->
domain
,
cdo_dst
->
raw_ptr
,
len
,
int
err
=
fi_mr_reg
(
app_entry
->
ep
->
domain
,
cdo_dst
->
raw_ptr
+
ticket
->
dst_offset
,
len
,
FI_READ
,
0
,
requested_key
,
0
,
&
mr
,
NULL
);
FI_READ
,
0
,
requested_key
,
0
,
&
mr
,
NULL
);
if
(
err
)
{
if
(
err
)
{
ERR
(
"Couldn't register memory region for RDMA transport (err: %d, %s)
\n
"
,
ERR
(
"Couldn't register memory region for RDMA transport (err: %d, %s)
\n
"
,
...
@@ -601,14 +601,14 @@ mstro_transport_rdma_dst_execute(mstro_cdo cdo_dst, Mstro__Pool__TransferTicket*
...
@@ -601,14 +601,14 @@ mstro_transport_rdma_dst_execute(mstro_cdo cdo_dst, Mstro__Pool__TransferTicket*
}
}
/* read full-fragment blocks */
/* read full-fragment blocks */
size_t
offset
=
ticket
->
dst_offset
;
// write dst cdos at the correct position
size_t
offset
=
0
;
size_t
num_retries
;
size_t
num_retries
;
for
(
size_t
i
=
closure
->
num_fragments
;
for
(
size_t
i
=
closure
->
num_fragments
;
i
-->
1
;
)
{
i
-->
1
;
)
{
status
=
mstro_transport_rdma__read
(
app_entry
,
cdo_dst
,
status
=
mstro_transport_rdma__read
(
app_entry
,
cdo_dst
,
local_buf_mr_desc
,
mr_addr
,
mr_key
,
local_buf_mr_desc
,
mr_addr
,
mr_key
,
offset
,
fragment_size
,
offset
,
fragment_size
,
ticket
->
dst_offset
,
closure
);
closure
);
//add dst_offset for dist_cdos
if
(
status
!=
MSTRO_OK
)
{
if
(
status
!=
MSTRO_OK
)
{
ERR
(
"Failed to read fragment %zu
\n
"
,
closure
->
num_fragments
-
i
);
ERR
(
"Failed to read fragment %zu
\n
"
,
closure
->
num_fragments
-
i
);
goto
BAILOUT
;
goto
BAILOUT
;
...
@@ -619,7 +619,7 @@ mstro_transport_rdma_dst_execute(mstro_cdo cdo_dst, Mstro__Pool__TransferTicket*
...
@@ -619,7 +619,7 @@ mstro_transport_rdma_dst_execute(mstro_cdo cdo_dst, Mstro__Pool__TransferTicket*
/* final (partial) read */
/* final (partial) read */
status
=
mstro_transport_rdma__read
(
app_entry
,
cdo_dst
,
status
=
mstro_transport_rdma__read
(
app_entry
,
cdo_dst
,
local_buf_mr_desc
,
mr_addr
,
mr_key
,
local_buf_mr_desc
,
mr_addr
,
mr_key
,
offset
,
len
-
offset
,
offset
,
len
-
offset
,
ticket
->
dst_offset
,
closure
);
closure
);
if
(
status
!=
MSTRO_OK
)
{
if
(
status
!=
MSTRO_OK
)
{
ERR
(
"Failed to read last fragment
\n
"
);
ERR
(
"Failed to read last fragment
\n
"
);
...
...
This diff is collapsed.
Click to expand it.
Preview
0%
Loading
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!
Save comment
Cancel
Please
register
or
sign in
to comment