1. In a computing environment comprising a hardware assisted transaction system, a method of handling parallelism in transactions, the method comprising: beginning a cache resident transaction; encountering a nested structured parallelism construct within the cache resident transaction; determining whether the transaction would run faster serially in cache resident mode or faster parallel in software transactional memory mode for the overall transaction, but using cache resident mode for one or more hierarchically lower nested transactions; and continuing the transaction in the mode determined.