1. A system, comprising: at least one processor; and at least one memory storing computer-executable instructions that, when executed by the at least one processor, configure the system to: receive a transaction to be executed; initially attempt to execute the transaction in a hardware path; and upon a failure to successfully execute the transaction in the hardware path, attempt to execute the transaction in a hardware-software path, wherein the hardware-software path comprises a software path and at least one hardware transaction, wherein attempting to execute the transaction in the hardware-software path comprises performing writes from the software path in the at least one hardware transaction, wherein the transaction is executed without instrumenting reads in the hardware path, and wherein the hardware-software path is configured to execute hardware transactions and software transactions concurrently.