Skip to content
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

fix: remove atomic instruction #443

Closed
wants to merge 1 commit into from

Conversation

XuJiandong
Copy link
Contributor

@XuJiandong XuJiandong commented Sep 30, 2024

It can be done without hardfork: https://github.com/nervosnetwork/ckb-std/tree/master?tab=readme-ov-file#upgrading-issues

Additionally, refine the wording related to the syscall spawn.

It's not included in hardfork.
@XuJiandong XuJiandong requested a review from a team as a code owner September 30, 2024 05:10
@XuJiandong XuJiandong requested a review from quake September 30, 2024 05:10
4. Refactor ckb-vm to make it thread-safe. Thread-safe ckb-vm can take advantage of modern multi-core CPUs and execute multiple threads in parallel, potentially improving performance and throughput. At the same time, many modern applications and frameworks rely on multi-threading, and a thread-unsafe virtual machine may not be compatible with these technologies.
5. [Macro-Operation Fusion](https://en.wikichip.org/wiki/macro-operation_fusion). There are 5 MOPs added in VM version 2, there are:
1. One notable addition is the inclusion of a new system call called "Spawn," In essence, Spawn serves as an alternative to dynamic library calls and Exec.
2. In response to the growing prevalence of the aarch64 architecture, which is the 64-bit version of the ARM architecture utilized in various devices such as smartphones, tablets, and servers, we have incorporated assembly mode implementation into ckb-vm specifically for aarch64. By running ckb-vm on assembly mode, users can potentially experience improved performance with faster execution times, ultimately enhancing the overall efficiency of the system.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I don't think assembly implementation of CKB-VM for aarch64 is tied to version 2.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We will submit another PR for these 2 issues.

5. [Macro-Operation Fusion](https://en.wikichip.org/wiki/macro-operation_fusion). There are 5 MOPs added in VM version 2, there are:
1. One notable addition is the inclusion of a new system call called "Spawn," In essence, Spawn serves as an alternative to dynamic library calls and Exec.
2. In response to the growing prevalence of the aarch64 architecture, which is the 64-bit version of the ARM architecture utilized in various devices such as smartphones, tablets, and servers, we have incorporated assembly mode implementation into ckb-vm specifically for aarch64. By running ckb-vm on assembly mode, users can potentially experience improved performance with faster execution times, ultimately enhancing the overall efficiency of the system.
3. Refactor ckb-vm to make it thread-safe. Thread-safe ckb-vm can take advantage of modern multi-core CPUs and execute multiple threads in parallel, potentially improving performance and throughput. At the same time, many modern applications and frameworks rely on multi-threading, and a thread-unsafe virtual machine may not be compatible with these technologies.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Personally I wasn't sure what this refers to

@mohanson
Copy link
Contributor

mohanson commented Oct 2, 2024

I submitted a new PR to replace this one

#444

@XuJiandong
Copy link
Contributor Author

included in: #444

@XuJiandong XuJiandong closed this Oct 8, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants