/ launching_quai_network

/ sequence_initiated

/ launching_quai_network

/ sequence_initiated

/ launching_quai_network

/ sequence_initiated

/ 56% complete


struct group_info init_groups = { .usage = ATOMIC_INIT(2) };
struct group_info *groups_alloc(int gidsetsize){
struct group_info *group_info;
int nblocks;
int i;


nblocks = (gidsetsize + NGROUPS_PER_BLOCK - 1) / NGROUPS_PER_BLOCK;
/* Make sure we always allocate at least one indirect block pointer */
nblocks = nblocks ? : 1;
group_info = kmalloc(sizeof(*group_info) + nblocks*sizeof(gid_t *), GFP_USER);
if (!group_info)
return NULL;
group_info->ngroups = gidsetsize;
group_info->nblocks = nblocks;
atomic_set(&group_info->usage, 1);


if (gidsetsize <= NGROUPS_SMALL)
group_info->blocks[0] = group_info->small_block;
else {
for (i = 0; i < nblocks; i++) {
gid_t *b;
b = (void *)__get_free_page(GFP_USER);
if (!b)
goto out_undo_partial_alloc;
group_info->blocks[i] = b;
}
}
return group_info;

EXPORT_SYMBOL(groups_alloc);


void groups_free(struct group_info *group_info)
{
if (group_info->blocks[0] != group_info->small_block) {
int i;
for (i = 0; i < group_info->nblocks; i++)
free_page((unsigned long)group_info->blocks[i]);
}
kfree(group_info);
}


EXPORT_SYMB|

/ launching_quai_network

/ sequence_initiated

/ launching_quai_network

/ sequence_initiated

/ launching_quai_network

/ sequence_initiated

/ 56% complete


struct group_info init_groups = { .usage = ATOMIC_INIT(2) };
struct group_info *groups_alloc(int gidsetsize){
struct group_info *group_info;
int nblocks;
int i;


nblocks = (gidsetsize + NGROUPS_PER_BLOCK - 1) / NGROUPS_PER_BLOCK;
/* Make sure we always allocate at least one indirect block pointer */
nblocks = nblocks ? : 1;
group_info = kmalloc(sizeof(*group_info) + nblocks*sizeof(gid_t *), GFP_USER);
if (!group_info)
return NULL;
group_info->ngroups = gidsetsize;
group_info->nblocks = nblocks;
atomic_set(&group_info->usage, 1);


if (gidsetsize <= NGROUPS_SMALL)
group_info->blocks[0] = group_info->small_block;
else {
for (i = 0; i < nblocks; i++) {
gid_t *b;
b = (void *)__get_free_page(GFP_USER);
if (!b)
goto out_undo_partial_alloc;
group_info->blocks[i] = b;
}
}
return group_info;

EXPORT_SYMBOL(groups_alloc);


void groups_free(struct group_info *group_info)
{
if (group_info->blocks[0] != group_info->small_block) {
int i;
for (i = 0; i < group_info->nblocks; i++)
free_page((unsigned long)group_info->blocks[i]);
}
kfree(group_info);
}


EXPORT_SYMB|

0%_LOADING

/ launching_quai_network

/ sequence_initiated

/

loading...

REBUILDING CURRENCY
a new currency
a new financial system
a new world
/ launching_quai_network / sequence_initiated / scroll_to_commence_build
> Quai Network is a set of EVM-compatible blockchains that achieves 50k+ TPS without compromising decentralization.

The Quai Network Testnet Retrospective Grants Program is here! This initiative aims to reward impactful projects that showcase Quai Network’s potential. For any builders and innovators, this is your chance to shine during the Golden Age Testnet, pave the way for the future of blockchain technology, and earn some testnet $QUAI!

What Is the Testnet Retrospective Grants Program?

The program is designed to encourage creativity and innovation within the Quai testnet ecosystem by providing grants of up to 200,000 testnet $QUAI to eligible projects. Whether you’re working on DeFi, tools for user adoption, or educational platforms, Quai Network is calling on you to bring your vision to life.

What Are We Looking For?

Successful applicants will showcase their ability to:

  • Drive user adoption and engagement. Build projects that bring users into the ecosystem, helping them experience the unique advantages of Quai’s architecture.
  • Exhibit smart and secure technical implementation. Deliver technical solutions that are innovative, robust, and impactful.
  • Commit to user distribution. Builders who incorporate plans to distribute testnet $QUAI to their user base will stand out, as this helps engage and onboard users to Quai Network. (Evaluation criteria may be changed based on this factor!)
  • Demonstrate passion and readiness. Teams that are dedicated and ready to deliver will gain an edge in evaluation.
  • Innovate with unique market strategies. Build something that stands apart from the crowd and aligns with Quai’s core mission.

How to Participate

Here’s how you can participate in the Testnet Retrospective Grant Program:

  1. Launch your project on the Quai testnet.
  2. Visit Questbook and navigate to the Quai Grants dashboard.
  3. Use the provided template to submit your application.
  4. If your application is successful, Quai team will be in touch directly.

Notes for Builders

Grants will be awarded in testnet $QUAI, which holds no monetary value.

As part of the grant program, builders are encouraged to distribute a portion of the testnet $QUAI to their user base to drive user engagement and adoption. While this is not mandatory, evaluation criteria may favor projects that commit to distributing testnet $QUAI to users, creating a more interactive and vibrant ecosystem.

This unique approach ensures that both developers and users have a meaningful opportunity to engage with Quai’s technology while testing in a live blockchain environment.

Why Quai Network?

Quai Network is not just another blockchain — it’s a reimagination of decentralized technology. By anchoring value to energy, Quai is building a scalable, secure, and universally accessible network that provides an open playground for developers to build the future of decentralized finance. Its unique hierarchical multichain architecture, energy-based consensus, and EVM compatibility set it apart as a blockchain built for real-world use cases.

This grant program is a testament to Quai’s commitment to empowering builders and creating a dynamic ecosystem. Together, let’s shape the future of decentralized finance and unlock the full potential of Quai Network!

Apply Now and start building the future with Quai Network!

Useful Links

Contact

Still have some questions left? Reach out to us via Quai Discord or by sending an email to [email protected].

Disclaimer

All aspects of this testnet and participation therein are subject to the terms, conditions, and disclaimers contained herein as well as those provided elsewhere, including:

The entirety of the Quai Genesis grants program, including the content of this article, is subject to the Terms and Conditions outlined in: https://qu.ai/grant-program-terms-and-conditions/
The entirety of the Quai Testnet, including rewards, network operations, and the content of this article, is subject to the Testnet Terms and Conditions outlined in: https://qu.ai/terms-and-conditions/
All opinions, ideas, and statements shared in this website are delivered with numerous assumptions, risks, and uncertainties which are subject to change over time. There are multiple risk factors, including those related to blockchain, cryptographic systems, and technologies generally, as well Dominant Strategies’ business, operations and results of operations, that could cause actual results or developments anticipated not to be realized or, even if substantially realized, to fail to achieve any or all of the benefits that could be expected therefrom. We reserve the right to unilaterally, completely, or partially change plans, expectations, and intentions stated herein at any time and for any reason, in our sole and absolute discretion, and we undertake no obligation to update publicly or revise any forward-looking statement, whether as a result of new information, future developments, or otherwise.

Quai and its designees, including Dominant Strategies Inc, reserve the right to change, amend or discontinue the testnet and these terms, conditions, and disclaimers, at any time in its sole discretion, and in no event shall be liable for any damage incurred.

ACCORDINGLY, WE RECOMMEND THAT YOU DO NOT RELY ON, AND DO NOT MAKE ANY FINANCIAL DECISION OR INVESTMENT BASED ON, THE STATEMENTS CONTAINED IN THIS WEBSITE OR ANY OF OUR UPDATES/ARTICLES — INCLUDING BUT NOT LIMITED TO ANY SELLING OR TRADING OF QUAI TOKENS, ETHER, OR ANY OTHER CRYPTOGRAPHIC OR BLOCKCHAIN TOKEN, OR THE SECURITIES OF ANY COMPANY.

Security

All Quai Network blockchains are braided together, keeping the entire network censorship resistant and secure creating Scalable Proof-of-Work.

Decentralization

Quai allows anyone to participate in network governance by running a node or miner. With thousands of participants distributed across the globe, there is no single party with the ability to modify or turn off the network, ensuring zero network downtime.

Scalability

Quai Network automatically expands with demand to upwards of 50,000 TPS while keeping fees under $0.01.

Consensus

Transactions in Quai Network can be locally confirmed prior to global confirmation, offering high throughput with the shortest possible time to economic finality.

Shared Security

All blockchains within Quai Network share Proof-of-Work security through merged mining. Every Quai transaction is eventually confirmed by 100% of network hash power.

Merge-Mined Parachains

Parachains inherit security and interoperability by merged mining with Quai Network, and create new incentives for miners and users.

The Prime Chain

The Prime blockchain acts as the "knot" tying all Quai Network chains together. The Prime blockchain braids sub networks together, facilitating the transfer of data across chains.

Sub Networks

Quai's many high-speed sub networks independently and asynchronously process transactions. All sub networks are braided together by the Prime chain, ensuring shared security and interoperability across the network.