-
Notifications
You must be signed in to change notification settings - Fork 14
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
adapt Oceanstor pacific 100D filesystem #23
base: huawei
Are you sure you want to change the base?
Conversation
862df3d
to
eda01ea
Compare
43f3755
to
9d6e1bb
Compare
* zero, it's probably still a good idea to mix the "small" file domains | ||
* across the fd_size array to keep the io nodes in balance */ | ||
ADIO_Offset n_oceanfs_blk = fd_oceanfs_range / blksize; | ||
ADIO_Offset nb_cn_small = n_oceanfs_blk / naggs; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
If possible, I think it would make sense to reduce the use of division and multiplication operations and re-use results when possible, such as (n_oceanfs_blk / naggs).
This would yield better performance on ARM platforms as well as Intel.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thank you for your suggestions. I also checked other codes to minimize the calculation of multiplication and division;
|
||
for (i = 0; i < naggs; i++) { | ||
if (i < naggs_large) { | ||
fd_size[i] = (nb_cn_small + 1) * blksize; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Since (nb_cn_small + 1) * blksize; and (nb_cn_small * blksize) are constant values in the loop, they can be pre-calculated and assigned into 2 variables that will be used inside the loop.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
(nb_cn_small + 1) * blksize; and (nb_cn_small * blksize) are constant values,I have defined variables to save the results to avoid repeated calculations in the loop;
3acfd56
to
90e5257
Compare
Thanks for your pull request. Before we can look at your pull request, you'll need to sign a Contributor License Agreement (CLA). The following commits have not yet signed CLA. 90e5257 | adapt OceanStor Pacipic 100D filesystem 📝 Please access here to sign the CLA. It may take a couple minutes for the CLA signature to be fully registered; after that, please reply here with a new comment: /check-cla to verify. Thanks.
|
hypermpi adapt OceanStor Pacific 100D filesystem,